用mingw4.8.2 静态编译QT5.3.1
2014-11-11 12:53
519 查看
一、需求
用QT开发的程序发布时要带个各种动态链接库(.dll),否则无法在其它机器上运行,如果静态编译自己写的QT应用程序就需要动态链接库了,直接一个.exe文搞定。
二、下载源文件
目前要机器上己经装了QT5.3.0,带有QT Creater, mingwr4.8.2以及QT的动态链接库,现在需自己下载源代码静态库译QT库
下载地址为:
http://download.qt-project.org/official_releases/qt/5.3/5.3.1/single/qt-everywhere-opensource-src-5.3.1.zip.mirrorlist
下载下来文件为:
qt-everywhere-opensource-src-5.3.1.zip
三、编译
1、首先设置系统环境变量
在include中添加:D:\Qt\Qt5.3.0\Tools\mingw482_32\i686-w64-mingw32\include
在lib中添加:D:\Qt\Qt5.3.0\Tools\mingw482_32\i686-w64-mingw32\lib
如果以前机器装有vs2005、vs2008。。。。。等最好是把环境变量中的include 和lib先删除掉,否则可能会configurfe时报错:
error:redeclaration of C++ built-in type 'wchar_t' [-fpermissive]
![](http://img.blog.csdn.net/20140728163934453?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZ2hlbG91MTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2、解压文件qt-everywhere-opensource-src-5.3.1.zip然后dos命令下进入到E:\Qt5.3.1src\qt-everywhere-opensource-src-5.3.1目录,执行:
configure -confirm-license -opensource -prefix "G:\Qt\Qt5.3.1" -debug-and-release -static -platform win32-g++ -opengl desktop -no-angle -nomake examples -nomake tests -skip qtwebkit
D:\Qt\qt-everywhere-opensource-src-5.3.1\qtbase>configure -confirm-license -opensource -prefix "D:\Qt\qt5.3.1_static_build" -debug-and-release -static -platform win32-g++ -opengl desktop -no-angle -nomake examples -nomake tests -skip qtwebkit -no-qml-debug
解释一下上面的命令:
-opensource 编译和链接开源版的Qt.
-prefix "G:\Qt\Qt5.3.1" 最后装到目录G:\Qt\Qt5.3.1
-debug-and-release 编译debug版本和release版本
-static 静态编译
-platform win32-g++ 目标平台,win32
-opengl desktop 选择desktop的opengl
-no-angle
-nomake examples 不编译examples
-nomake tests 不编译tests
-skip qtwebkit 不编译qtwebkit
3、mingw32-make
4、mingw32-make install
漫长的编译将近4个小时
四、测试
1、打开Qt Creator,工具--->选项----->构建和运行----->Qt Versions----->手动设置------->添加
在版本名称里写上:Qt 5.3.1 (Qt5.3.1)
在qmake 路径里写上:G:\Qt\Qt5.3.1(Qt5.3.1)
![](http://img.blog.csdn.net/20140728164438265?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZ2hlbG91MTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2、点击构建套件
手动设置---->添加
名称:qt 5.3.1-static
Qt版本:选 择刚才添加的Qt 5.3.1 (Qt5.3.1),点击确定
![](http://img.blog.csdn.net/20140728164847803?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZ2hlbG91MTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
3、部署时按如下设置即可
用QT开发的程序发布时要带个各种动态链接库(.dll),否则无法在其它机器上运行,如果静态编译自己写的QT应用程序就需要动态链接库了,直接一个.exe文搞定。
二、下载源文件
目前要机器上己经装了QT5.3.0,带有QT Creater, mingwr4.8.2以及QT的动态链接库,现在需自己下载源代码静态库译QT库
下载地址为:
http://download.qt-project.org/official_releases/qt/5.3/5.3.1/single/qt-everywhere-opensource-src-5.3.1.zip.mirrorlist
下载下来文件为:
qt-everywhere-opensource-src-5.3.1.zip
三、编译
1、首先设置系统环境变量
在include中添加:D:\Qt\Qt5.3.0\Tools\mingw482_32\i686-w64-mingw32\include
在lib中添加:D:\Qt\Qt5.3.0\Tools\mingw482_32\i686-w64-mingw32\lib
如果以前机器装有vs2005、vs2008。。。。。等最好是把环境变量中的include 和lib先删除掉,否则可能会configurfe时报错:
error:redeclaration of C++ built-in type 'wchar_t' [-fpermissive]
2、解压文件qt-everywhere-opensource-src-5.3.1.zip然后dos命令下进入到E:\Qt5.3.1src\qt-everywhere-opensource-src-5.3.1目录,执行:
configure -confirm-license -opensource -prefix "G:\Qt\Qt5.3.1" -debug-and-release -static -platform win32-g++ -opengl desktop -no-angle -nomake examples -nomake tests -skip qtwebkit
D:\Qt\qt-everywhere-opensource-src-5.3.1\qtbase>configure -confirm-license -opensource -prefix "D:\Qt\qt5.3.1_static_build" -debug-and-release -static -platform win32-g++ -opengl desktop -no-angle -nomake examples -nomake tests -skip qtwebkit -no-qml-debug
解释一下上面的命令:
-opensource 编译和链接开源版的Qt.
-prefix "G:\Qt\Qt5.3.1" 最后装到目录G:\Qt\Qt5.3.1
-debug-and-release 编译debug版本和release版本
-static 静态编译
-platform win32-g++ 目标平台,win32
-opengl desktop 选择desktop的opengl
-no-angle
-nomake examples 不编译examples
-nomake tests 不编译tests
-skip qtwebkit 不编译qtwebkit
3、mingw32-make
4、mingw32-make install
漫长的编译将近4个小时
四、测试
1、打开Qt Creator,工具--->选项----->构建和运行----->Qt Versions----->手动设置------->添加
在版本名称里写上:Qt 5.3.1 (Qt5.3.1)
在qmake 路径里写上:G:\Qt\Qt5.3.1(Qt5.3.1)
2、点击构建套件
手动设置---->添加
名称:qt 5.3.1-static
Qt版本:选 择刚才添加的Qt 5.3.1 (Qt5.3.1),点击确定
3、部署时按如下设置即可
相关文章推荐
- 用mingw4.8.2 静态编译QT5.3.1
- 用mingw4.8.2 静态编译QT5.3.1
- 用mingw静态编译Qt4.8.2和Qt5.1.1
- 用mingw静态编译Qt4.8.2和Qt5.1.1
- 用mingw静态编译Qt4.8.2和Qt5.1.1(需要修改不少源码)
- QT+MinGW在windows中静态编译程序
- MinGW编译Qt较好的一些文章链接(静态或动态)
- Qt学习(六) VS2013编译Qt5.3.1的静态库
- Linux下编译静态MinGW环境,编译windows平台Qt程序(使用MXE)
- QT5.10开发(2) 在Windows 10下使用MinGW编译 静态Qt 5.10 release版 详细过程
- [转载]QT+MinGW在windows中静态编译程序
- Qt5.3.1 MinGW482 release静态版编译结果、过程及QtCreator配置(转)
- Qt5.2.0 MinGW480 release静态版编译结果、过程及QtCreator配置分享(realfan的编译方法)(configure -h可以显示帮助)(静态编译mysql插件,需要做一些其它工作,机器上要有mysql)(不编译qtwebkit,就不用安装ActivePerl了)(用到 QMediaPlayer的编译办法)
- Qt 4.6.2在VS2005,VS2008,MinGW环境下的静态编译
- Qt5.3.1 静态编译的configure
- Windows下MinGW编译静态Qt I 之实践
- Qt5.3.1 MinGW482 release静态版编译结果、过程及QtCreator配置(转)
- Openssl - Static libraries (w32, mingw) 以及对Qt静态编译时的设置
- Windows下MinGW编译静态Qt5 I
- Poppler 及 Poppler-Qt4 在Windows下基于MinGW的静态编译 - Poppler Qt4