qt.network.ssl: QSSlSocket: cannot resolve



  • Yesterday I was working with QNetworkAccessManager on Windows10 and noticed all of my network calls were not returning any results. When I looked at the console I noticed the following error messages.

    qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_client_method
    qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_client_method
    qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_server_method
    qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_server_method
    qt.network.ssl: QSslSocket: cannot resolve SSL_select_next_proto
    qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
    qt.network.ssl: QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
    qt.network.ssl: QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiated
    qt.network.ssl: QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiated

    I googled this error and stumbled upon this link, which advised that QT was built using a different OpenSSL library then the on my operating system is using. The solution was to rebuild QTBase.

    Being relativity new to QT I followed the instructions at this link. Everything seemed fine until about an hour into the build it failed building the qtwebkit module. When I searched the error I found an open discussion on the webkit mailing list about this being a bug.

    My question. Is there a way I can just rebuild the network module instead of having to build everything? does anyone know the configuration options I would need to pass building on win10/64bit/vc12?

    Thank you


  • Qt Champions 2016

    @Frederick0 said:
    Hi and welcome
    did you install
    http://slproweb.com/products/Win32OpenSSL.html ( no 2 in the list, Win32 OpenSSL v1.0.2e)
    ( dll to windows folder)


  • Lifetime Qt Champion

    Hi and welcome to devnet,

    These are just warnings, you'll only have failures if you actively use these symbols. You can also just rebuild qtbase if you do it with the same sources as the version you have installed.

    @mrjj: never put OpenSSL dlls (or any other for that matter) in the windows folder. There will be other applications picking your version of OpenSSL rather than theirs which could bring problems.


  • Qt Champions 2016

    @SGaist
    Ok. i though side by by dll loading would take dlls in folder for app first
    then system32. The reason I suggested using that option from installer is that it was
    shown in forum thread. I see your point.



  • @SGaist j Thank you. After reading your comment I examined my code further and realized the method I was using to debug my response was invalid. I jumped the gun in concluding the warning messages were at fault.

    @mrjj Thank you. I installed the DLL into a bin folder and added them to the execution directory w/o much luck. Thank you for your suggestion though.


  • Qt Champions 2016

    @Frederick0
    Sorry for misunderstanding. I thought you wanted to get SSL to work, not
    just get rid of the warning.



  • @mrjj no misunderstanding. It was the latter and both of your responses were equally helpful.


Log in to reply
 

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