gpt4 book ai didi

c++ - Qt 在 Ubuntu 22.04 上缺少 OpenSSL 3.x 支持

转载 作者:行者123 更新时间:2023-12-04 18:24:57 31 4
gpt4 key购买 nike

我尝试构建使用 QNetworkManager 的应用程序与服务器通信。我在较旧的 Linux 版本上没有任何问题,但在最新的 Ubuntu 22.04 上,网络回复失败,QtCreator 显示以下输出:

Incompatible version of OpenSSL (built with OpenSSL 1.x, runtime version is >= 3.x)
The backend "cert-only" does not support QSslKey
Active TLS backend does not support key creation
The backend "cert-only" does not support QSslKey
Active TLS backend does not support key creation
The backend "cert-only" does not support QSslKey
Active TLS backend does not support key creation
The backend "cert-only" does not support QSslKey
Active TLS backend does not support key creation
The backend "cert-only" does not support QSslKey
Active TLS backend does not support key creation
The backend "cert-only" does not support QSslKey
Active TLS backend does not support key creation
The backend "cert-only" does not support QSslSocket
The backend named "cert-only" does not support TLS
QSslSocket::connectToHostEncrypted: TLS initialization failed
QSslSocket::connectToHostEncrypted: TLS initialization failed
当我在较旧的 Ubuntu (20.04) 上构建我的应用程序并将其部署为 AppImage,然后在 Ubuntu 22.04 上运行它时,网络通信也失败并出现同样的错误。
如何解决?我需要能够在较旧的 Ubuntu 上创建 AppImage,然后“到处”运行它......
更新:我设法使用正确的 OpenSSL 库在 Ubuntu 20.04 上构建和部署我的应用程序的部署 AppImage,现在它也在 Ubuntu 22.04 上运行。诀窍是手动复制 libssl.so.1.1在调用 linuxdeployqt 之前到 AppImage lib 文件夹在上面。
但是我仍然没有找到如何在 Ubuntu 22.04 上使用 QtCreator 构建和运行我的应用程序。幸运的是,这对我来说并不重要,因为我构建它是为了在 Ubuntu 20.04 上部署。

最佳答案

按照以下解决方法,我能够在 Ubuntu 22.04 和 Qt 6.3.0 上解决此问题:
https://linuxpip.org/install-openssl-linux/
您必须从源代码构建 OpenSSL 1.1 并告诉系统使用新安装的 OpenSSL。

关于c++ - Qt 在 Ubuntu 22.04 上缺少 OpenSSL 3.x 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71997447/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com