realfan的个人主页

http://www.qtcn.org/bbs/u/123401  [收藏] [复制]

realfan

  • 87

    关注

  • 188

    粉丝

  • 2029

    访客

  • 等级:精灵王
  • 身份:论坛版主
  • 总积分:1488
  • 男,2011-01-01

最后登录:2024-04-18

更多资料

日志

Qt5.2.1 MinGW480 release静态版编译结果、过程及QtCreator配置分享

2013-12-12 16:31
这是我编译好的静态release版,可以直接取用,7z压缩包,解压即用(感谢zzhouqianq提醒)
http://yunpan.cn/QDvxdTL9LFLJP (提取码:871c)
包含odbc,sqlite,没有webkit
如果要自己编译,可以参考下面的过程及需要的文件
一、文件准备,下面用到的文件,可以自行到相应官网下载。我在网盘上也共享了:
① qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe
http://yunpan.cn/QpMMWfEYnM4fg
静态编译来,只是用里面的mingw。但从搭建开发环境的角度,也建议安装。
② qt-everywhere-opensource-src-5.2.1.zip
http://yunpan.cn/Q4sYIFjYcPbRa
③ Python3.3
http://yunpan.cn/QDApXxWyXUDPW
不编译qtwebkit,就不用安装ActivePerl了。
二、安装
① 安装 qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe ,我是安装在C:\QT\Qt5.2.1
② 将 qt-everywhere-opensource-src-5.2.1.zip 解压到C:\QT\
③安装Python C:\Python33
三、编译准备
编辑C:\QT\qt-everywhere-opensource-src-5.2.1\qtbase\mkspecs\win32-g++\qmake.conf
找到QMAKE_LFLAGS和QMAKE_LFLAGS_DLL,后面赋值为-static
QMAKE_LFLAGS        = -static
QMAKE_LFLAGS_DLL    = -static
保存,退出
(如果不做这个修改,生成的执行文件要依赖libgcc_s_dw2-1.dll,libstdc++-6.dll,libwinpthread-1.dll)
四、开始编译
开始==》程序==》Qt5.2.1==》5.2.1==》MinGW 4.8(32-bit)==》Qt 5.2.1 for Desktop (MinGW 4.8 32 bit)
进入命令窗口,输入命令
① cd C:\QT\qt-everywhere-opensource-src-5.2.1
② set path= C:\Python33;%path%
③ 配置
configure -confirm-license -opensource -platform win32-g++ -release -static -ltcg -prefix "C:\QT\5.2.1-mingw32-rel-static" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -no-qml-debug -nomake tests -nomake examples -skip qtwebkit -qt-pcre -no-compile-examples
④ 没出什么错误的话,mingw32-make
⑤ mingw32-make install
五、QtCreator配置
编译好后,在QtCreator中加新编译的qt kits。
打开QtCreator, Tools-->options-->build & run-->
Debuggers选项卡,应该有个C:\Qt\5.2.1\Tools\mingw48_32\bin\gdb.exe 调试器,如果没有,就点击Add,手工加一下。
Compilers选项卡,也应该有MinGW4.8 32bit编译器,如果没有,手工加,指向C:\Qt\5.2.0\Tools\mingw48_32\bin\g++.exe
QtVersions选项卡,应该已经存在C:\Qt\Qt5.2.1\5.2.1\mingw48_32\bin\qmake.exe
现在把自己编译的加进来,点Add按钮,选择C:\Qt\5.2.1-mingw-rel-static\bin\qmake.exe,可以给这个Qt编译版本取个名字,比如Qt 5.2.1 (5.2.1-mingw-rel-static) 点Apply
Kits选项卡,点Add,
name我们随便取一个,比如5.2.1_rel_static,
Compiler选择MinGW4.8 32bit,
Debugger,选择C:\Qt\5.2.1\Tools\mingw48_32\bin\gdb.exe对应的那个
QtVersion,选择Qt 5.2.1 (5.2.1-mingw-rel-static) ,确定,就设置好了。


注:静态编译时,如果工程中使用了插件,需要在pro文件中为QTPLUGIN加上对应的插件才能正常使用,如odbc, sqlite, 打印
    QTPLUGIN += qsqlodbc
    QTPLUGIN += qsqlite
    QTPLUGIN += windowsprintersupport












分类:默认分类|回复:19|浏览:7111|全站可见|转载
 
 
删除

dosmlp:静态编译后的库什么的可以移动到其他位置吗?还是只能放在prefix指定的位置,我用msvc2010编译的

2014-06-19 20:35 -

realfan:可以移到其它位置。用prefix=..  则放到哪都可以。但msvc版没试过不知道是否一样。因为用msvc2013编译的qt5.3发现qt.conf不起作用

2014-06-20 00:06
删除

恒古炎:请问这些指令在哪里查?

2014-03-23 21:37 -

realfan:mingw32-make在Mingw的bin下面。configure在源码目录下。

2014-03-23 23:45

恒古炎:我想知道配置那些指令的使用说明 请问这个在哪里看?

2014-03-24 11:13

realfan:configure -h可以显示帮助

2014-03-24 14:14

恒古炎:感谢!

2014-03-24 14:16

恒古炎:我想添加mysql插件支持 加上了 -qt-sql-mysql -plugin-sql-mysql  但是提示有错误  请问这个命令是错的吗

2014-03-29 09:10

realfan:静态编译mysql插件,需要做一些其它工作,机器上要有mysql,你在网上可以搜一下。直接编译肯定是不成功的。

2014-03-29 12:08

恒古炎:哦 5.2.1里面有mysql 我以为直接编译就行了 网上其它方法都是编译成dll 静态能给个地址吗

2014-03-29 15:34
删除

hehui

2014-01-02 15:56 -
删除

weiweiqiao:楼主你好。我按照你写的编译方法自己进行编译,到了“开始编译的第三步”显示mingw32-make:*** waiting for unfinished jobs....这个是要继续等的节奏么?:)

2013-12-14 18:53 -

realfan:还真没遇到过,重新运行configure呢?

2013-12-14 19:24

weiweiqiao:卡到这里了。。我试着从新来下。还没见有报错信息

2013-12-14 19:34

weiweiqiao:重新运行也不行。不知为什么我用你编译的始终运行有错。。还在查,还有就是楼主,你是否有安装qt-windows-opensource-5.2.0-mingw48_opengl-x86-offline,为什么我在这里始终没有找到qmake.exe?

2013-12-14 23:03

realfan:这里编译,安装qt-windows-opensource-5.2.0-mingw48_opengl-x86-offline只是用到mingw带的编译器。qt-everywhere-opensource-src-5.2.0\qtbase\bin下有qmake.exe

2013-12-17 08:38
删除

desig:上午自己摸黑编译个上午,结果,建立工程编译出错。折腾一圈,跑这里来了

2013-12-14 13:15 -
删除

zhanglyl:收藏!MARK先

2013-12-14 10:34 -
删除

奋斗ing孩子:好东西,先来看看!真是神速。。。

2013-12-13 09:29 -

Powered by phpwind v8.7 Certificate Copyright Time now is:04-19 04:41
©2005-2016 QTCN开发网 版权所有 Gzip disabled