[SOLVED] QSslSocket - Error on OSX since 5.4
-
I run my App 100% fine on my Mac, however I get a lot on warnings with Open SSL. (didnt have those with 5.3.2)
QSslSocket: cannot resolve TLSv1_1_client_method
QSslSocket: cannot resolve TLSv1_2_client_method
QSslSocket: cannot resolve TLSv1_1_server_method
QSslSocket: cannot resolve TLSv1_2_server_method
QSslSocket: cannot resolve SSL_select_next_proto
QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiated
QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiatedProject is linked to SSL :
@ LIBS += -lcrypto -lssl@I thought Mac OSX ship with Open SSL installed already? was I wrong? on windows I shipped the 2 needed .dll.
-
Update:
Not sure why this only happen since 5.4, did they change the version of openSSL used in the QWebView?
Right now I only get theses error (seems like warning) because the software is running fine, just wondering why they are there and how to fix them..Tried every possible linking of open-ssl in my .pro
@ #LIBS += -lcrypto -lssl
LIBS += /usr/local/ssl/lib/libssl.a
LIBS += /usr/local/ssl/lib/libcrypto.a@I can confirm it's related to 5.4, I still have 5.3.2 installed on my OS X, and can compile and execute without the warnings
Thanks
-
Here is most of my .pro file:
Note, I haven't moved to QWebEngine yet as I need cookie management and can't do that yet with QWebEngine. Thanks
@win32 {
RC_FILE = myapp.rc
DEFINES += NOMINMAX#SFML INCLUDEPATH += C:/Dropbox/SFML-2.1-windows-vc11-32bits/include LIBS += C:/Dropbox/SFML-2.1-windows-vc11-32bits/lib/sfml-audio.lib #SSL LIBS += C:/Dropbox/OpenSSL-Win32/lib/libeay32.lib LIBS += C:/Dropbox/OpenSSL-Win32/lib/ssleay32.lib #QWT INCLUDEPATH += C:/Dropbox/qwt-6.1.0/src include ( C:/Dropbox/qwt-6.1.0/qwt.prf )
}
#////////////////////////////////////////////////////////////////////////////////////////////////////////
macx {
ICON = myappico.icns
#QMAKE_MAC_SDK = macosx10.9 #building on MavericksCONFIG += x86_64 CONFIG -= i386 #SSL LIBS += -lcrypto -lssl #SFML INCLUDEPATH += /Users/tourlou2/Dropbox/SFML-2.1-osx-clang-universal/include LIBS += /Users/tourlou2/Dropbox/SFML-2.1-osx-clang-universal/lib/libsfml-audio.2.1.dylib LIBS += /Users/tourlou2/Dropbox/SFML-2.1-osx-clang-universal/lib/libsfml-system.2.1.dylib #QWT include ( /Users/tourlou2/Dropbox/qwt-6.1.0/qwt.prf ) #VLC source include (core/core.pri) include (widgets/widgets.pri) include (vlc/vlc.pri)
}@
-
On further search, 5.4 use a new version of openSSL, and on Mac OS, they still use an old version and some function are not compatibles.
So I would have to ship the openSSL .dylib with my software, I'm not gonna do that, will wait for OSX to update their package like they should, the messages are just warning anyway.
Thanks -
Hi,
Apple isn't going to update OpenSSL anytime soon. They are providing their own cryptographic framework and recommend against using OpenSSL. They don't even ship OpenSSL for iOS.
Anyway, there's work in progress to get the "native" framework used in Qt 5 for both OS X and iOS