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 分钟前
最新国内可用的Docker镜像加速器地址收集
运维·笔记·docker·容器
SKYDROID云卓小助手3 小时前
三轴云台之相机技术篇
运维·服务器·网络·数码相机·音视频
东方佑3 小时前
自动调整PPT文本框内容:防止溢出并智能截断文本
linux·运维·powerpoint
zhougl9964 小时前
html处理Base文件流
linux·前端·html
泥土编程5 小时前
kubekey -实现懒人一键部署K8S集群
linux·运维
wirepuller_king8 小时前
创建Linux虚拟环境并远程连接,finalshell自定义壁纸
linux·运维·服务器
在野靡生.9 小时前
Ansible(1)—— Ansible 概述
linux·运维·ansible
风123456789~9 小时前
【Linux运维】查询指定日期的上月
linux·运维·服务器
zyk_5209 小时前
Docker desktop如何汉化
运维·docker·容器
韭菜盖饭9 小时前
解决Docker端口映射后外网无法访问的问题
运维·docker·容器