QT https SSL支持静态QT静态程序构建 - 仍然需要openssl dll

时间:2016-03-02 00:44:16

标签: c++ qt ssl

您好我正在尝试使用编译成可执行文件的openssl库来编译我为Windows静态编写的QT程序。我以为我成功但是我不能在没有Openssl dll存在的情况下运行porgram。我试图找到一个解决方案,但无法查找解决方案。这就是我所做的:

我通过编辑windows powershell脚本将其传递给configure.bat,以便静态构建qt,然后运行它来构建:

-openssl-linked
-I C:\OpenSSL-Win32\include
-L C:\OpenSSL-Win32\lib\MinGW
OPENSSL_LIBS=""-lUser32 -lAdvapi32 -lGdi32 -lCrypt32""
OPENSSL_LIBS_DEBUG=-""-lssleay32 -llibeay32""
OPENSSL_LIBS_RELEASE=""-lssleay32 -llibeay32""

现在没有openssl dll,可执行文件无法正常工作。我做错了吗?

2 个答案:

答案 0 :(得分:0)

您正在使用动态版本的OpenSSL进行链接。您应该使用静态链接:

-L C:\OpenSSL-Win32\lib\MinGW\static

答案 1 :(得分:0)

Shining Light Productions的答案:

  

Dependency Walker将向您显示可执行文件所依赖的DLL。   使用VC ++ DLL作为源“构建”MinGW库。   IIRC,没有静态MinGW构建(为什么生成的.a文件是   如此巨大的一直是我的一个谜。)