Arch Linux 安装旧版QT 5.5.1 编译及安装包运行报错求助
报错根因
- 源码编译报错:当前系统OpenSSL版本过高(≥1.1),Qt 5.5.1的网络模块仅兼容OpenSSL 1.0.x系列,编译时找不到匹配的头文件和函数定义,因此在编译
qsslcertificate_openssl.o时报错中断。 - 官方二进制安装包段错误:同样为OpenSSL版本不兼容导致,预编译的Qt 5.5.1安装程序绑定了OpenSSL 1.0.x的函数调用,当前系统无对应版本库文件,调用空指针触发段错误。
正确安装步骤(Arch系发行版适用,你使用pacman包管理器适配该方案)
首先安装OpenSSL 1.0兼容依赖:
pacman -S openssl-1.0
以下三种方案任选其一即可,推荐优先选择方案3:
方案1:AUR包一键安装
如果你使用yay/paru等AUR助手,直接执行命令安装预编译好的Qt 5.5.1:
yay -S qt55
安装完成后相关文件会存放在/opt/qt55目录下,使用时直接调用/opt/qt55/bin/qmake即可。
方案2:官方二进制安装包安装
启动安装程序时强制链接OpenSSL 1.0库即可正常运行:
LD_LIBRARY_PATH=/usr/lib/openssl-1.0 ./qt-opensource-linux-x64-5.5.1.run
按照安装向导指引选择独立的安装路径即可(不要覆盖系统自带的Qt 5.15,建议选择/home/你的用户名/qt5.5.1这类非系统目录),后续使用时调用安装路径下5.5/gcc_64/bin/qmake即可。
方案3:源码编译安装
执行configure配置时指定OpenSSL 1.0的路径,避免调用系统高版本OpenSSL:
./configure -openssl -I /usr/include/openssl-1.0 -L /usr/lib/openssl-1.0 -prefix /home/你的用户名/qt5.5.1
配置完成后正常执行make和make install即可,编译完成后使用安装路径下的qmake。
版本使用注意事项
- 不要修改系统全局的qmake软链接指向Qt 5.5.1,会破坏系统依赖Qt 5.15的软件功能。
- 项目需要使用Qt 5.5.1编译时,可手动指定对应qmake的绝对路径,也可在当前终端临时导出环境变量:
export PATH=/home/你的用户名/qt5.5.1/5.5/gcc_64/bin:$PATH
内容的提问来源于stack exchange,提问作者CHIPPY
相关产品推荐
相关产品推荐

