Linux Qt-5.12.1静态编译

1 Linux Qt-5.12.1静态编译

声明:以下仅为个人经验,若有错误地方望指正

1.1 下载Qt-5.12.1源码
下载网站:https://download.qt.io/archive/qt/5.12/5.12.1/single/
下载qt-everywhere-src-5.12.1.tar.xz的压缩包
解压tar.xz文件:先 xz -d xxx.tar.xz 将 xxx.tar.xz解压成 xxx.tar 然后,再用 tar xvf xxx.tar来解包

1.2 确认make存在
(1)使用 make -v 查看make是否存在
(2)若不存在则使用sudo apt install make安装make

1.3 configure生成Makefile
./configure -static -release -qt-zlib -qt-libpng -qt-libjpeg -nomake examples -nomake tests -no-opengl -prefix /home/ubuntu16/Desktop/wubw/Qt-5.12.1-static -skip qttools -skip qtsensors -skip qtconnectivity -skip qtserialport -skip qtmultimedia

虚拟机:
./configure -static -release -qt-zlib -qt-libpng -qt-libjpeg -nomake examples -nomake tests -no-opengl -prefix /home/qtOpenSource/Qt-5.12.1-static -skip qttools -skip qtsensors -skip qtconnectivity -skip qtserialport -skip qtmultimedia

参数-static 指的是要采用静态编译Qt的方法
参数-release指的是只编译release版本的库
参数-qt-zlib -qt-libpng -qt-libjpeg 是更好确定Qt编译出的程序能在目前不知的系统下运行【可要可不要】
参数-nomake demos -nomake examples 指的是不编译demos和examples
参数 -prefix /usr/local/Qt-5.12.1_static 指明静态编译的Qt安装的目录,据说没有这个,就会覆盖掉你之前安装的动态编译安装的Qt(如果有的话)
参数-skip qttools -skip qtsensors -skip qtconnectivity -skip qtserialport -skip qtmultimedia表示跳过这些模块,不编译,若需要这些模块则去掉相关-skip

参考: https://blog.csdn.net/u012822903/article/details/62058287
http://community.qnx.com/sf/wiki/do/viewPage/projects.qt/wiki/Qt5.3.0BuildInstructionsForQNXOS6.6
https://blog.csdn.net/xi_gua_gua/article/details/53413930?locationNum=5&fps=1

1.4 make -j4
使用4个线程同时编译Qt源码

1.5 make install
安装Qt-5.12.1_static静态库,到-prefix后面设置的目录下

1.6 使用静态库编译Qt项目代码
(1)指定静态库的路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/Qt-5.12.1_static/lib
后面的Qt静态库的路径根据实际情况改变

(2)指定默认qmake
将静态库的qmake拷贝到/usr/bin
qmake -v检测该qmake是否是静态库的qmake路径

(4)生成Makefile
qmake xxx.pro

(5)编译Makefile
make

你可能感兴趣的:(工具类使用,Qt,编译,Linux,Qt-5.12.1,静态编译)