我决不相信这个解决方案,因为我做了一个简单的谷歌搜索并遇到了
http://codeblog.vurdalakov.net/2009/11/solution-qsslsocket-cannot-call.html
我相信由于库内的变化,错误会有所不同。
问题
当您尝试使用QSslSocket
或QNetworkAccessManager
类打开 HTTPS URL 时,您会收到以下错误:
QSslSocket: cannot call unresolved function SSLv3_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function ERR_get_error
QSslSocket: cannot call unresolved function ERR_error_string
解决方案
您需要安装 OpenSSL Win32 或 Win64 二进制文件。
- 打开 Win32 OpenSSL 安装项目页面。
- 下载最新的“light”Win32 或 Win64 安装包,例如“Win32 OpenSSL v0.9.8l Light”。
- 将其安装到任何位置。忽略“Microsoft Visual C++ 2008 Redistributables”警告(单击“确定”)并选择将 OpenSSL DLL 复制到“OpenSSL 二进制文件 (\bin) 目录”。
- 将\bin 文件夹中的
libeay32.dll
and复制到您的orssleay32.dll
所在的同一位置。QtNetwork4.dll
QtNetworkd4.dll