PDA

View Full Version : OpenSSL 1.1.1 does not work in my application on Windows 10



lalesculiviu
19th June 2019, 21:03
Dear community,

I am the author of a free software application named FET.

I am fetching a file with https from my server.

Using Qt 5.12.3 and below I copied the files ssleay32.dll and libeay32.dll in the same directory as fet.exe and it worked.

Using the new Qt 5.13.0 I copied the files libcrypto-1_1-x64.dll and libssl-1_1-x64.dll in the same directory as fet.exe (my application is compiled for 64 bit). On another computer with Windows 7 it works, on two computers with Windows 10 (on which I installed previously Qt 5.12.3, maybe this is the reason?) it says it does not load the SSL libraries and does not work.

On GNU/Linux it works OK.

Lesiok
20th June 2019, 10:16
Windows 10 have built in OpenSSH client. Maybe this is the cause of some conflict.

dyfet
20th June 2019, 21:03
https://bugreports.qt.io/browse/QTBUG-62637 this suggests to me, that, at least for visual studio builds, Qt no longer uses (as of 5.13) openssl for ssl, but rather windows ssl directly. Hence, copying the dlls would likely not doing anymore, except maybe for mingw builds? In either case, at the bottom, "...It's a new feature in 5.13. You have to configure Qt properly though (it's not enabled by default on Windows)." I really wish this was explained further, but maybe suggests why it does not work "out of the box" either. If it had, you probably would not have noticed the openssl dll's weren't being used. Maybe there is a better/more complete explanation of how ssl works on windows on Qt 5.13, and whether this is true for both mingw and msvc, but I did not find it offhand.

lalesculiviu
20th June 2019, 21:24
Thank you for the reply. I am using MinGW 7.3.0 supplied with Qt 5.13.0 online package.

lalesculiviu
21st June 2019, 00:20
I managed to get it working by compiling Qt from the sources with "configure.bat -schannel ...". It even doesn't need the OpenSSL dll's anymore, which is even better.