如何在 Windows 中将 OpenSSL 3.x 与 Qt 链接?

How to link OpenSSL 3.x with Qt in Windows?

提问人:iammilind 提问时间:9/22/2023 更新时间:9/22/2023 访问量:41

问:

默认情况下,Qt 6.2(和6.5)都链接到“Windows安全通道”。对我们来说,这个版本是不可行的,因为它失败了一些套接字连接,否则这些连接可以与 1.1.1t 等一起使用。

已经下载了最新的OpenSSL-3.x源代码,甚至他们的dll。如何将它们与Qt链接以显示3.0?QSslSocket::sslLibraryVersionString()

C++ Windows OpenSSL 动态链接 QT6

评论

0赞 Botje 9/22/2023
我相当确定这是一个编译时标志,您需要自己重新编译Qt。
0赞 iammilind 9/22/2023
@Botje 通过一些反复试验,我观察到,我设法得到了“1.1.1t”而不是“安全通道”。但是在系统重新启动后,我丢失了该更改。不记得我是怎么做到的。如果它不能动态链接,那么这将是一个非常漫长的过程:-(
1赞 Botje 9/22/2023
啊,Qt 6.1有一个QSslSocket::setActiveBackend方法可以调用。在这种情况下,您可以检查 OpenSSL 是否列在 中。QSslSocket::availableBackends()
0赞 Osyotr 9/22/2023
Qt 需要使用 openssl3 头文件构建(如果您使用官方二进制文件,它可能已经以这种方式构建),然后您只需要在 Qt 二进制文件附近有 openssl3 dll。

答: 暂无答案