Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

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

    German
    curl 5.12.1 msvc2017 qtcreator
    2
    3
    786
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sm-a last edited by sm-a

      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

      1 Reply Last reply Reply Quote 0
      • sirop
        sirop last edited by sirop

        @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.

        To be, or not to be: that is the question:
        Whether ’tis nobler in the mind to suffer
        The slings and arrows of outrageous fortune,
        Or to take arms against a sea of troubles,
        And by opposing end them?

        1 Reply Last reply Reply Quote 1
        • S
          sm-a last edited by

          @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

          1 Reply Last reply Reply Quote 0
          • First post
            Last post