我计划在运行虚拟机的ubuntu 14.04上安装qt 5.5.1。我从qt-io下载了安装程序,当我尝试安装设置时,我在终端上发现了以下警告,然后弹出安装程序。
qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method
我是否需要担心这个警告?当我在同一台机器上安装qt 5.3.1时,我没有看到任何此类错误。
有没有办法解决此警告?任何帮助表示赞赏。感谢。
这是我机器上当前版本的openSSL。
openssl version -v
OpenSSL 1.0.1f 6 Jan 2014
现在Ubuntu中的OpenSSL是在没有sslv2的情况下编译的,因为它不安全,但Qt 5.5.x仍然需要它。为了启用sslv2,需要在没有no-sslv2标志的情况下重新配置包。
安装必备软件包
sudo apt-get update
sudo apt-get install libssl-dev devscripts dpkg-dev cdbs debhelper dh-autoreconf libev-dev libpcre3-dev pkg-config
然后,抓住源
cd ~/Downloads
sudo apt-get update
apt-get source openssl
现在我们需要在openssl-1.0.1f / debian / rules中编辑该文件。找到第44行(可能在不同版本中行号不同)并删除no-ssl2
,以便它如下所示:
cd openssl-1.0.1f
nano debian/rules
CONFARGS = --prefix=/usr --openssldir=/usr/lib/ssl --libdir=lib/$(DEB_HOST_MULTIARCH) no-idea no-mdc2 no-rc5 no-zlib enable-tlsext no-ssl3 enable-unit-test $(ARCH_CONFARGS)
接下来,我们将添加评论并提交更改。然后重新构建包,这将花费一些时间,因此请跳至nmap部分并下载源代码。
您可能会收到一些错误,说版权无法验证,请忽略它。此外,编译可能需要一段时间,所以请耐心等待。
dch –n 'Allow SSLv2'
dpkg-source --commit
debuild -uc -us
现在回到~/Downloads
,您将看到构建的所有deb包。安装它们:
cd ..
sudo dpkg -i *ssl*.deb
现在重做你的Qt 5.5.1安装,看看警告是否仍然存在。