欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Qt静态编译

程序员文章站 2022-03-30 17:10:26
...

1.qt-everywhere-opensource-src-5.9.0.tar.gz下载源码包
2.解压
3.配置configure
4.make
5.make install
6.添加环境变量

QTDIR=/usr/local/Trolltech/Qt-5.9.0_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

7.重启,执行qmake -v查看是否能显示版本号

编译程序

1.例如一个已有的qt工程,将工程目录下的*.pro和*.pro.usr文件删掉
2.执行qmake -project生成一个新的pro文件
3.修改pro文件,在里边添加CONFIG += static
4.执行qmake生成Makefile
5.修改Makefile,在CXXflags选项后面加上 -static
6.执行make生成可执行文件,此时可执行文件大小为几十M
报错:执行make时可能会产生一下报错

In file included from main.cpp:1:0:
mainwindow.h:4:23: fatal error: QMainWindow: 没有那个文件或目录
 #include <QMainWindow>
                       ^
compilation terminated.

这个错误是因为执行qmake -project生成新的pro文件,这个文件里什么配置都没有,需要我们加上 QT += core widgets或其他一些工程需要的静态库动态库等等,也就是第2步生成的是一个很原生的一个pro文件,具体的配置需要自己加上

相关标签: # 其他 linux