QCA-build for Win32 for PGP



  • Hi All,

    I have installed @Qt latest with Qt creator 2.6.1 (Qt 5.0.0).
    I am successfully creating any projects with it, I have a project where I need to use PGP and found out an implementation is there for it
    from (@qca) http://delta.affinix.com/qca/ that I think was going to be very easy to use as I have always been a Visual Studio user but never used @Qt.
    now when I have downloaded the latest source of qca and run configure the following error appears

    C:\SDK>cd C:\SDK\qca-2.0.3\qca-2.0.3

    C:\SDK\qca-2.0.3\qca-2.0.3>configure
    Configuring Qt Cryptographic Architecture (QCA) ...
    Verifying Qt 4 build environment ... fail

    Reason: Unable to find the 'qmake' tool for Qt 4.

    Be sure you have a proper Qt 4.0 build environment set up. This means not
    just Qt, but also a C++ compiler, a make tool, and any other packages
    necessary for compiling C++ programs.

    If you are certain everything is installed, then it could be that Qt 4 is not
    being recognized or that a different version of Qt is being detected by
    mistake (for example, this could happen if %QTDIR% is pointing to a Qt 3
    installation). At least one of the following conditions must be satisfied:

    1. --qtdir is set to the location of Qt
    2. %QTDIR% is set to the location of Qt

    This program will use the first one it finds to be true, checked in the above
    order.

    is there any guide to building and integrating qca with qt?

    regards
    sid.



  • welcome to devnet

    As I see it, it is a problem of the QCA configure and not a Qt issue.

    My assumption is that might build with higher than the expected Qt4.2 as long as it is Qt4.
    With Qt5 you might have to check with the QCA guys, or you need to see what has to be changed in QCA configure.



  • thanks! I have posted to their list, let's see what they come up with, mean while will keep exploring Qt for creation of a good UI.



  • You could still use Qt4 as a starter when QCA cannot react fast enough.



  • It is possible to compile QCA and its plugins with qt5 using
    this path https://github.com/psi-plus/main/blob/master/patches/dev/qca_qt5.patch
    and this QConf https://github.com/psi-plus/qconf

    PS use --verbose when you running configure to see detail log



  • You have to make sure configure.exe uses windows cmd shell, if it finds sh.exe in your path if will use that as its shell and configure will fail. In order to force configure to use cmd shell, remove any path you have pointing to sh.exe from your %PATH% environment variable and retry.



  • thanks for the help, I am really not very much into the build system like that have always been working with more likely Visual Studio ( I tried to get the patch but I don't understand how to make the patch to qca)

    following is the output of the

    configure--verbose

    C:\SDK\qca-2.0.3\qca-2.0.3>configure --verbose
    Configuring Qt Cryptographic Architecture (QCA) ...

    EX_QTDIR=
    QC_STATIC=
    QC_RELEASE=
    QC_DEBUG=
    QC_DEBUG_AND_RELEASE=
    QC_NO_SEPARATE_DEBUG_INFO=
    QC_SEPARATE_DEBUG_INFO=
    QC_NO_FRAMEWORK=
    QC_FRAMEWORK=
    QC_UNIVERSAL=
    QC_MAC_SDK=
    QC_DISABLE_TESTS=
    QC_CERTSTORE_PATH=
    QC_CERTSTORE_INTERNAL=
    Verifying Qt 4 build environment ...
    Warning: qmake not found via --qtdir
    qmake found in C:\Qt\Qt5.0.0\5.0.0\msvc2010/bin/qmake.exe
    Trying "make"
    Trying "mingw32-make"
    Trying "nmake"
    -> fail

    Reason: There was an error compiling 'conf'. See conf.log for details.

    Be sure you have a proper Qt 4.0 build environment set up. This means not
    just Qt, but also a C++ compiler, a make tool, and any other packages
    necessary for compiling C++ programs.

    If you are certain everything is installed, then it could be that Qt 4 is not
    being recognized or that a different version of Qt is being detected by
    mistake (for example, this could happen if %QTDIR% is pointing to a Qt 3
    installation). At least one of the following conditions must be satisfied:

    1. --qtdir is set to the location of Qt
    2. %QTDIR% is set to the location of Qt

    This program will use the first one it finds to be true, checked in the above
    order.

    conf.log:
    The system cannot find the file specified.



  • Trying “nmake” -> fail

    You need to run all commands from Visual Studio Command Prompt (Link is in the Start -> Programs -> Visual Studio).

    May need to first build QConf from source to link I gave above.



  • Hi there,
    following is the error that I got after using Visual Studio 2010 command prompt

    C:\SDK\qca-2.0.3\qca-2.0.3>configure --verbose
    Configuring Qt Cryptographic Architecture (QCA) ...

    EX_QTDIR=
    QC_STATIC=
    QC_RELEASE=
    QC_DEBUG=
    QC_DEBUG_AND_RELEASE=
    QC_NO_SEPARATE_DEBUG_INFO=
    QC_SEPARATE_DEBUG_INFO=
    QC_NO_FRAMEWORK=
    QC_FRAMEWORK=
    QC_UNIVERSAL=
    QC_MAC_SDK=
    QC_DISABLE_TESTS=
    QC_CERTSTORE_PATH=
    QC_CERTSTORE_INTERNAL=
    Verifying Qt 4 build environment ...
    Warning: qmake not found via --qtdir
    qmake found in C:\Qt\Qt5.0.0\5.0.0\msvc2010/bin/qmake.exe
    Trying "make"
    Trying "mingw32-make"
    Trying "nmake"
    -> fail

    Reason: There was an error compiling 'conf'. See conf.log for details.

    Be sure you have a proper Qt 4.0 build environment set up. This means not
    just Qt, but also a C++ compiler, a make tool, and any other packages
    necessary for compiling C++ programs.

    If you are certain everything is installed, then it could be that Qt 4 is not
    being recognized or that a different version of Qt is being detected by
    mistake (for example, this could happen if %QTDIR% is pointing to a Qt 3
    installation). At least one of the following conditions must be satisfied:

    1. --qtdir is set to the location of Qt
    2. %QTDIR% is set to the location of Qt

    This program will use the first one it finds to be true, checked in the above
    order.

    conf.log:

    Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
    Copyright (C) Microsoft Corporation. All rights reserved.

        "C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe" -f Make
    

    file.Release

    Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
    Copyright (C) Microsoft Corporation. All rights reserved.

        C:\Qt\Qt5.0.0\5.0.0\msvc2010\bin\moc.exe -DUNICODE -DHAVE_MODULES -DQT_N
    

    O_DEBUG -DQT_CORE_LIB -I. -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include" -I".
    .......\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtCore" -I"release" -I"........
    Qt\Qt5.0.0\5.0.0\msvc2010\mkspecs\win32-g++" -D__GNUC__ -DWIN32 conf4.cpp -o rel
    ease\conf4.moc
    g++ -c -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexcep
    tions -mthreads -DUNICODE -DHAVE_MODULES -DQT_NO_DEBUG -DQT_CORE_LIB -I. -I"...
    .....\Qt\Qt5.0.0\5.0.0\msvc2010\include" -I"........\Qt\Qt5.0.0\5.0.0\msvc2
    010\include\QtCore" -I"release" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\mkspecs
    \win32-g++" -o release\conf4.o conf4.cpp
    'g++' is not recognized as an internal or external command,
    operable program or batch file.
    NMAKE : fatal error U1077: 'g++' : return code '0x1'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 10.0\VC\BI
    N\nmake.exe"' : return code '0x2'
    Stop.



  • @........\Qt\Qt5.0.0\5.0.0\msvc2010\mkspecs \win32-g++”@

    This is wrong. Should be something like this

    @5.0.0\msvc2010\mkspecs\win32-msvc2010"@

    Try to build QConf previously:

    1. Download patched QConf https://github.com/psi-plus/qconf
    2. Build it.
    3. Copy qconf.exe, qconf.exe.embed.manifest (not sure), conf (directory) to ./QCA (root)
    4. Run "qconf" in ./QCA. It should create configure.exe and configure files.
      Then try again.

    PS I might forget something specify.



  • Hi again

    I was able to build the qconf from source.
    C:\SDK\qca-2.0.3\qca-2.0.3>qconf
    Project name: Qt Cryptographic Architecture (QCA)
    Profile: qca.pro
    Deps: qt42* buildmode* buildmode_framework* universal* extra* certstore*

    'configure' written.
    'configure.exe' written.

    and run it but it is still giving the same error, and to be understanding actually I still haven't been able to apply the patch that you mentioned earlier for qca
    https://github.com/psi-plus/main/blob/master/patches/dev/qca_qt5.patch

    I have downloaded the patch application and git as well, configured patch in qt creator but unable to patch it (is that the reason for the errors that I am getting)
    can you please point me to some place where I can see the method of patching the project.



  • I see that you try to patch version from archive. Can you try to patch lastest version from svn?
    svn://anonsvn.kde.org/home/kde/trunk/kdesupport/qca
    The patch was written for this version.

    When I build QCA I can't patch it by GIT too. I used TortoiseSVN to patch it. Just open right-click menu of the directory where svn-checkout is and select TortoiseSVN->Apply patch. Then select qt5.patch downloaded by GIT.



  • Hi again!
    I was into the UI work and found out a limitation there as well so I have moved to now Qt 4.8 with Qt Creator 2.6.1, tried to build the qca 2.0.3 with the same commands did not make any patch to it and at the end it turns out to be the error is kind of same.

    EX_QTDIR=
    QC_STATIC=
    QC_RELEASE=
    QC_DEBUG=
    QC_DEBUG_AND_RELEASE=
    QC_NO_SEPARATE_DEBUG_INFO=
    QC_SEPARATE_DEBUG_INFO=
    QC_NO_FRAMEWORK=
    QC_FRAMEWORK=
    QC_UNIVERSAL=
    QC_MAC_SDK=
    QC_DISABLE_TESTS=
    QC_CERTSTORE_PATH=
    QC_CERTSTORE_INTERNAL=
    Verifying Qt 4 build environment ...
    Warning: qmake not found via --qtdir
    qmake found in C:\Qt\4.8.4/bin/qmake.exe
    Trying "make"
    Trying "mingw32-make"
    Trying "nmake"
    -> fail

    Reason: There was an error compiling 'conf'. See conf.log for details.

    Be sure you have a proper Qt 4.0 build environment set up. This means not
    just Qt, but also a C++ compiler, a make tool, and any other packages
    necessary for compiling C++ programs.

    If you are certain everything is installed, then it could be that Qt 4 is not
    being recognized or that a different version of Qt is being detected by
    mistake (for example, this could happen if %QTDIR% is pointing to a Qt 3
    installation). At least one of the following conditions must be satisfied:

    1. --qtdir is set to the location of Qt
    2. %QTDIR% is set to the location of Qt

    This program will use the first one it finds to be true, checked in the above
    order.

    conf.log:

    Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
    Copyright (C) Microsoft Corporation. All rights reserved.

        "C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe" -f Make
    

    file.Debug

    Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
    Copyright (C) Microsoft Corporation. All rights reserved.

        C:\Qt\4.8.4\bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DHAVE_MODULES
    

    -DQT_DLL -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SS
    E2 -DQT_THREAD_SUPPORT -I"........\Qt\4.8.4\include\QtCore" -I"........\Qt
    \4.8.4\include" -I"........\Qt\4.8.4\include\ActiveQt" -I"debug" -I"......
    ..\Qt\4.8.4\mkspecs\win32-g++" -D__GNUC__ -DWIN32 conf4.cpp -o debug\conf4.moc
    g++ -c -pipe -g -frtti -fexceptions -mthreads -Wall -Wextra -DUNICODE -D
    QT_LARGEFILE_SUPPORT -DHAVE_MODULES -DQT_DLL -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HA
    VE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"........\Qt\4.8
    .4\include\QtCore" -I"........\Qt\4.8.4\include" -I"........\Qt\4.8.4\incl
    ude\ActiveQt" -I"debug" -I"........\Qt\4.8.4\mkspecs\win32-g++" -o debug\conf
    4.o conf4.cpp
    'g++' is not recognized as an internal or external command,
    operable program or batch file.
    NMAKE : fatal error U1077: 'g++' : return code '0x1'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 10.0\VC\BI
    N\nmake.exe"' : return code '0x2'
    Stop.



  • Set QTDIR environment path and then check.

    Please check Installwin batch file this searches for QTDIR env variable.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.