c++ - 如何在archlinux上安装旧的QT版本?
问题描述
我很久以前就安装了 pacman 的 QT5。
qmake -v
QMake version 3.1
Using Qt version 5.15.2 in /usr/lib
我想安装 QT 5.5.1,所以我下载了qt-everywhere-opensource-src-5.5.1.7z并按照自述文件进行操作。这是最终结果:
make[3]: *** [Makefile:21908: .obj/qsslcertificate_openssl.o] Error 1
make[3]: Leaving directory '/home/chippy/Downloads/qt-everywhere-opensource-src-5.5.1/qtbase/src/network'
make[2]: *** [Makefile:192: sub-network-make_first] Error 2
make[2]: Leaving directory '/home/chippy/Downloads/qt-everywhere-opensource-src-5.5.1/qtbase/src'
make[1]: *** [Makefile:46: sub-src-make_first] Error 2
make[1]: Leaving directory '/home/chippy/Downloads/qt-everywhere-opensource-src-5.5.1/qtbase'
make: *** [Makefile:73: module-qtbase-make_first] Error 2
然后我下载了 qt-opensource-linux-x64-5.5.1.run在 shell 上运行:
$ ./qt-opensource-linux-x64-5.5.1.run
static QPlatformTheme* QKdeTheme::createKdeTheme(): Unable to determine KDE dirs
qt.network.ssl: QSslSocket: cannot resolve CRYPTO_num_locks
qt.network.ssl: QSslSocket: cannot resolve CRYPTO_set_id_callback
qt.network.ssl: QSslSocket: cannot resolve CRYPTO_set_locking_callback
qt.network.ssl: QSslSocket: cannot resolve ERR_free_strings
qt.network.ssl: QSslSocket: cannot resolve sk_new_null
qt.network.ssl: QSslSocket: cannot resolve sk_push
qt.network.ssl: QSslSocket: cannot resolve sk_free
qt.network.ssl: QSslSocket: cannot resolve sk_num
qt.network.ssl: QSslSocket: cannot resolve sk_pop_free
qt.network.ssl: QSslSocket: cannot resolve sk_value
qt.network.ssl: QSslSocket: cannot resolve SSL_library_init
qt.network.ssl: QSslSocket: cannot resolve SSL_load_error_strings
qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv3_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv23_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method
qt.network.ssl: QSslSocket: cannot resolve SSLv3_server_method
qt.network.ssl: QSslSocket: cannot resolve SSLv23_server_method
qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get_chain
qt.network.ssl: QSslSocket: cannot resolve OPENSSL_add_all_algorithms_noconf
qt.network.ssl: QSslSocket: cannot resolve OPENSSL_add_all_algorithms_conf
qt.network.ssl: QSslSocket: cannot resolve SSLeay
qt.network.ssl: QSslSocket: cannot resolve SSLeay_version
qt.network.ssl: QSslSocket: cannot call unresolved function CRYPTO_num_locks
qt.network.ssl: QSslSocket: cannot call unresolved function CRYPTO_set_id_callback
qt.network.ssl: QSslSocket: cannot call unresolved function CRYPTO_set_locking_callback
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init
Could not register file downloader for https protocol: QSslSocket::supportsSsl() returns false
[7] Warning: QSslSocket: cannot call unresolved function SSLv23_client_method
[8] Warning: QSslSocket: cannot call unresolved function sk_num
[1] 17534 segmentation fault (core dumped) ./qt-opensource-linux-x64-5.5.1.run
我无法理解错误,我不知道这是否是解决问题的正确方法。
解决方案
删除以前的 qt,然后安装一个新的 . 请参阅有关删除 Qt的信息
您应该转到安装 Qt 的路径,然后运行维护工具.exe 文件。然后卸载以前的,安装新的。
推荐阅读
- python-3.x - 如何从python中的折线获得点的最短距离?
- php - 如何在php中使用变量动态声明一个类
- php - Shopware Docker 安装后 URL 出错
- azure-devops - Azure DevOps Server 2019 - 仅在拉取请求完成时持续部署
- netlogo - NetLogo 中的空间自相关
- php - 如何将 jquery 代码添加到控制器并为其设置一些路由并将此路由传递到 href
- clang - Clang 如何找到它的默认 sysroot / target 三元组?(clang-tidy 已停止工作)
- heroku - 突然,PostgreSQL 服务器的 Heroku 凭据为用户错误提供了致命密码
- apache-spark - executor core的数量能大于spark任务的总数吗?
- node.js - 在一对多字段中按 id 过滤