ubuntu 下Qt静态编译,应用程序的静态编译与发布

需要配置的安装包 


apt-get install build-essential libpcap0.8-dev libx11-dev libfreetype6-dev libavahi-gobject-dev libSM-dev libXrender-dev libfontconfig-dev libXext-dev

静态编译Qt


1、下载 qt-x11-opensource-4.7.1.tar.gz

2、解压缩qt-x11-opensource-4.7.1.tar.gz

3、配置path

    输入命令:export PATH="$PATH:/usr/local/Trolltech/Qt-4.7.1/bin"

4、进入qt解压目录,配置configure命令:./configure -static -nomake demos -nomake examples -nomake tools -no-exceptions

5、分别输入“o”和“y”以后进入编译阶段

6、make

7、make install

慢慢等吧……根据电脑配置不同可能编译几小时到几十小时

静态编译Qt程序


1、建立文件夹,然后写程序文件XX.cpp

2、qmake -project
3、生成pro文件后在里面加入CONFIG += static
4、qmake 
5、生成Makefile后在cxxflags的=后插入-static
6、make

注意:在程序的main函数前加入程序使用的plugin,否则图片图标显示不正常,文字乱码

#include <QtPlugin> 
Q_IMPORT_PLUGIN(qjpeg)
Q_IMPORT_PLUGIN(qgif)
Q_IMPORT_PLUGIN(qcncodecs)
Q_IMPORT_PLUGIN(qico)

最后在工程 pro文件中加入库

linux下lib*.a既是这些库的静态版本,lib*.so等为动态版本

LIBS += D:/QT/4.6.0/plugins/imageformats/libqgif.a
LIBS += D:/QT/4.6.0/plugins/imageformats/libqjpeg.a
LIBS += D:/QT/4.6.0/plugins/codecs/libqcncodecs.a
LIBS += D:/QT/4.6.0/plugins/imageformats/libqico.a

否则编译出现
undefined reference to `qt_plugin_instance_qico()'等错误

你可能感兴趣的:(ubuntu 下Qt静态编译,应用程序的静态编译与发布)