我有一个默认安装的带MSVC的Qt 4.8.4版本。我的应用程序需要使用SSL连接服务器。
QtNetworkd4.dll需要运行时libeay32.dll和ssleay32.dll库。如果我将这些库放在我的应用程序目录中,一切都能正常工作。
我尝试将openssl库静态编译到我的应用程序中,虽然编译结果良好,但是启动应用程序时会报告未解决的符号,直到我将libeay32.dll和ssleay32.dll放置在应用程序文件夹中。
所以问题是: 是否明确这些库被编入我的应用程序没有任何用处,因为QtNetwordkd4.dll不会在我的应用程序二进制文件中查找所需的函数/符号,我应该编译整个Qt并内置openssl吗?就像这样:
或者说我正在尝试做的事情是可行的,只是我做错了什么,比如使用错误版本的libeay32和ssleay32等等?
我正在尝试使用静态openssl编译,有两个原因:
1. 我不需要将libeay32和ssleay32放在我的应用程序目录中。
2. 我担心在某些计算机上已经安装了不同版本的openssl,我的应用程序将与这些位于系统目录的库进行交互。
我尝试将openssl库静态编译到我的应用程序中,虽然编译结果良好,但是启动应用程序时会报告未解决的符号,直到我将libeay32.dll和ssleay32.dll放置在应用程序文件夹中。
所以问题是: 是否明确这些库被编入我的应用程序没有任何用处,因为QtNetwordkd4.dll不会在我的应用程序二进制文件中查找所需的函数/符号,我应该编译整个Qt并内置openssl吗?就像这样:
configure -openssl -I C:\OpenSSL-Win32\include -L C:\OpenSSL-Win32\lib\VC\static
或者说我正在尝试做的事情是可行的,只是我做错了什么,比如使用错误版本的libeay32和ssleay32等等?
我正在尝试使用静态openssl编译,有两个原因:
1. 我不需要将libeay32和ssleay32放在我的应用程序目录中。
2. 我担心在某些计算机上已经安装了不同版本的openssl,我的应用程序将与这些位于系统目录的库进行交互。