centOs 6.10 编译 qt 5.15.11

安装依赖库

xcb 依赖库

qt xcb 需要的依赖

如何要用 x11, 就要在编译的时候加上 -xcb 选项,就要安装 xcb 相关的库。

到时可以在 config.log 文件查看,缺少哪个库就安装哪个。

下面是我手动安装的库和对应版本:

xml 复制代码
xcb-proto-1.14.tar.gz
xcb-util-image-0.4.1.tar.gz
xcb-util-keysyms-0.4.1.tar.gz
xcb-util-renderutil-0.3.10.tar.gz
xcb-util-wm-0.4.2.tar.gz

注意:

  • 要先安装 xcb-proto 再安装其它的库。
  • 如果安装了库还是找不到,就配置 pkg-config 的搜索路径(一般是安装时自动配置好的)

xcb相关库下载地址

安装 xkbcommon 依赖库

x11 也会用到 xkbcommon 库,这个库在 centos 6.10 的包管理工具中没有,也需要源码编译安装

下载地址

我下载的是 1.5.0 版本。

解压
shell 复制代码
tar -xvf libxkbcommon-1.5.0.tar.xz
编译安装
shell 复制代码
cd libxkbcommon-1.5.0
meson setup build
meson compile -C build
# 安装完成后要配置 pkg-config 的搜索路径 .pc 文件

这里用的到 meson 工具也需要重新安装,版本要大于 0.55,centos 6.10 自带的版本太低了。

安装 meson
shell 复制代码
python -m pip install meson
python -m pip install ninja

这里的 python 也要重新安装,并且要配置好 openssl 才可以使用 pip。

可以参考我的另一篇教程:centos 6.10 安装 python3.10.5 和 openssl1.1.1

下载安装 qt 5.15.11

下载路径

下载后解压

依次执行下面命令

shell 复制代码
cd qt-everywhere-src-5.15.11
mkdir build && cd build
../configure -opensource -xcb -xcb-xlib -xkbcommon -qt-sqlite -sql-sqlite -prefix /home/keith/soft/qt5.15.11
gmake
gamke install

安装过程中的其它问题

整个安装过程是一个探索的过程,持续了快一个星期左右,前期的有些问题已经不记得是怎么解决的了。只记得遇到过这些问题

yum 无法使用

centos 6 在 2020 年 12 月以后,官方已经不在进行维护了, yum 无法直接再下载安装软件。

可以参考网上的教程,重新配置一下

注意: 或许不用配置,因为 yum 能直接安装的包都太老了,无法直接使用。

当时还遇到一个问题,是因为执行了:
yum install centos-release-scl, 导致后面一直报错,要把这个包删了才行:yum remove centos-release-scl

binutils 版本太老

忘了这个的报错是怎么样的了,但是可以参考这个文章解决
参考路径

sqlite

如果要用 sqlite

用 -qt-sqlite 选项, 用 qt 自带的 sqlite 而不是系统的

参考链接

Building Qt 5 from Git
How to Install Qt 5 and Qwt on CentOS 6
centos 6.10 安装 gcc 9.4
centos 6.10 安装 perl 5.14

相关推荐
未济3 天前
linux 配置环境变量
linux
傲世仙尊3 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
_艾伦 耶格尔.3 天前
进程间通信
linux
AI职业加油站3 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
Liuqy-053 天前
Linux IO编程——静态库、动态库
linux
此冬歌咏3 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
彧azz3 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
-梅3 天前
linux(8) 软硬链接
linux·运维·服务器
AIgorithmGEEK3 天前
[Linux]线程三部曲(上):一个执行流的诞生——从操作系统一路拆到 pthread_create
linux·线程·pid