环境准备
- Ubuntu 20.04.2 LTS
- qt-everywhere-src-5.14.2.tar.xz
下载地址:http://download.qt.io/archive/qt/
选择single版本的qt-everywhere-src-5.14.2.tar.xz下载。
在Ubuntu环境下解压(注意不要解压到有中文的路径下)。
解压命令 tar -xvf qt-everywhere-src-5.14.2.tar.xz
安装必备组件
sudo apt-get install build-essential gcc g++ cmake libxkbcommon-x11-dev libgl1-mesa-dev libglu1-mesa-dev libfontconfig1-dev libmysqlclient-dev libxcb-xfixes0-dev libxcb-util-dev
编译源码
进入Qt源码根目录,编写autoConfigure.sh
配置脚本:
touch autoConfigure.sh # 创建配置脚本
gedit autoConfigure.sh # 编辑脚本文件
填入如下内容:
#! /bin/bash
QT_INSTALL_PATH="-prefix /home/xxx/qt5.14.2_static" # Qt安装路径(自己对应修改)
QT_COMPLIER+="-platform linux-g++-64" # 编译器
CONFIG_PARAM+="-static " # 静态编译
CONFIG_PARAM+="-release " # 编译release
CONFIG_PARAM+="-recheck-all "
CONFIG_PARAM+="-nomake examples " # 不编译examples
CONFIG_PARAM+="-nomake tests " # 不编译tests
CONFIG_PARAM+=" -qt-xcb -xkbcommon -fontconfig -sql-mysql -qt-zlib -qt-libpng -qt-libjpeg "
# 选择Qt版本(开源, 商业), 并自动确认许可认证
CONFIG_PARAM+="-opensource " # 编译开源版本, -commercial商业版本
CONFIG_PARAM+="-confirm-license " # 自动确认许可认证
echo "./configure $CONFIG_PARAM $QT_COMPLIER $QT_INSTALL_PATH"
./configure $CONFIG_PARAM $QT_COMPLIER $QT_INSTALL_PATH
执行如下命令开始配置和编译:
chmod +x autoConfigure.sh
./autoConfigure.sh
make -j4 # 依据机器性能不同,耗时不一样
安装到指定目录
make install -j4 # 依据机器性能不同,耗时不一样
配置环境变量脚本
touch qtEnvironment.sh
gedit qtEnvironment.sh
填入如下内容:
#! /bin/bash
QTDIR=/home/xxx/qt5.14.2_static
PATH=$QTDIR/bin:$PATH
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR PATH MANPATH LD_LIBRARY_PATH
查看版本
chmod +x qtEnvironment.sh
source qtEnvironment.sh
qmake -v
出现qmake版本号为5.14.2,即可正常使用(每次使用前都需要source一次环境变量脚本),如下所示:
QMake version 3.1
Using Qt version 5.14.2 in /home/xxx/qt5.14.2_static/lib