Start der Anwendung mit cURL und MSVC 2017 compiler funktioniert nicht. Wie kann ich dieses lösen?



  • Wenn ich die Anwendung starte crashed diese sofort nach dem Start in QT Creator.

    Wie folgt habe ich cURL compiliert:

    Dieses muss zuvor installiert sein:
    https://nasm.us/
    http://strawberryperl.com/

    Vorbereitungen

    W10 -> Language for non unicode programms set to English united states

    WICHTIG: Visual Studio x64 native tools command prompt öffnen mit Administratorrechten für compile in x64

    OPENSSL

    cd <openssldir>

    cpan -i Test::More
    cpan -i Text::Template

    perl Configure VC-WIN64A --prefix=C:\curl-build\OpenSSL\DLL\x64\Release --openssldir=C:\curl-build\OpenSSL\SSL

    nmake
    nmake test
    nmake install_sw

    nmake clean

    perl Configure VC-WIN64A --debug --prefix=C:\curl-build\OpenSSL\DLL\x64\Debug --openssldir=C:\curl-build\OpenSSL\SSL

    nmake
    nmake test
    nmake install_sw

    nmake clean

    cURL

    cd <curldir>

    // Nur bei GIT Repository nutzen - bei Direktdownload nicht erforderlich
    buildconf.bat

    cd ./winbuild

    nmake /f Makefile.vc
    mode=dll
    WITH_SSL=dll
    MACHINE=x64
    DEBUG=no
    GEN_PDB=no
    SSL_PATH=C:\curl-build\OpenSSL\DLL\x64\Release

    Befehl in einer Zeile:
    nmake /f Makefile.vc mode=dll WITH_SSL=dll MACHINE=x64 DEBUG=no GEN_PDB=no SSL_PATH=C:\curl-build\OpenSSL\DLL\x64\Release

    Nun noch die Debugversion erstellen

    nmake /f Makefile.vc
    mode=dll
    WITH_SSL=dll
    MACHINE=x64
    DEBUG=yes
    GEN_PDB=yes
    SSL_PATH=C:\curl-build\OpenSSL\DLL\x64\Debug

    Befehl in einer Zeile
    nmake /f Makefile.vc mode=dll WITH_SSL=dll MACHINE=x64 DEBUG=yes GEN_PDB=yes SSL_PATH=C:\curl-build\OpenSSL\DLL\x64\Debug

    Wenn ich nun in im "pro" file folgendes anfüge und dann die Anwendung in QT Creator starte stürzt diese direkt nach dem compile vorgang ab. Wenn ich jedoch cURL direkt in Visual Studio 2017 community edition öffne und kompiliere und danach genau so einfüge dann funktioniert es jedoch ohne SSL. Benötige für das Projekt jedoch SSL Unterstützung von cURL.

    win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../../../../../curl-build/curl-7.64.0/builds/libcurl-vc-x64-release-dll-ssl-dll-ipv6-sspi/lib/ -llibcurl
    else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../../../../../curl-build/curl-7.64.0/builds/libcurl-vc-x64-release-dll-ssl-dll-ipv6-sspi/lib/ -llibcurld

    INCLUDEPATH += $$PWD/../../../../../../curl-build/curl-7.64.0/builds/libcurl-vc-x64-release-dll-ssl-dll-ipv6-sspi/include
    DEPENDPATH += $$PWD/../../../../../../curl-build/curl-7.64.0/builds/libcurl-vc-x64-release-dll-ssl-dll-ipv6-sspi/include

    Hoffe jemand hat eine Idee hat was ich falsch mache. Unter Linux funktioniert es nur unter Windows geht es nicht.

    Vielen Dank im voraus an euch alle.

    Grüße
    Sven



  • @sm-a said in Start der Anwendung mit cURL und MSVC 2017 compiler funktioniert nicht. Wie kann ich dieses lösen?:

    win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../../../../../curl-build/curl-7.64.0/builds/libcurl-vc-x64-release-dll-ssl-dll-ipv6-sspi/lib/ -llibcurl
    else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../../../../../../curl-build/curl-7.64.0/builds/libcurl-vc-x64-release-dll-ssl-dll-ipv6-sspi/lib/ -llibcurld

    release: The project is to be built in release mode. If debug is also specified, the last one takes effect. Siehe https://doc.qt.io/qt-5/qmake-variable-reference.html#config .

    Es schadet auch nie, ein paar geschweifte Klammern einzusetzen.



  • @sirop Vielen Dank für den Tipp.

    Ich habe jetzt herausgefunden das DLLs gefehlt haben. Dies habe ich herausgefunden als ich selbst die Anwendung ohne IDE gestartet habe. Da kamen entsprechende Fehlermeldungen. Nach einfügen dieser fehlenden DLLs funktioniert es nun.

    Vielen Dank für die Hilfe und an alle ein schönes Wochenende und einen guten Start in die neue Woche.

    Grüße
    Sven