realfan的个人主页

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

realfan

  • 87

    关注

  • 188

    粉丝

  • 2032

    访客

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

最后登录:2024-04-26

更多资料

日志

Qt5.0.1 MinGW47 release静态版编译结果及过程分享

2013-02-01 14:54
Qt5.0.1 MinGW47 release静态版编译结果及过程分享
(因Qt5.1.0已经发布,不再提供Qt5.0.1的编译结果下载,请至http://www.qtcn.org/bbs/apps.php?q=diary&a=detail&did=1448下载最新版 2013.7.6更新)


      Qt5是个跨越,但5.0.0作为第一版,问题还是比较多。很高兴在5.0.0发布后的第6周,修正版本及时放出。更令人有些兴奋的是5.0.1直接提供了MinGW4.7编译的库,为用户提供了很大的便利,尤其是对我这样的MinGW版本的追随者。但静态库,还是要自己编。这里把编译过程简单记录一下,一方面给自己备忘,另一方面也给初用Qt的同学一点参考。
即然有qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe,肯定是直接利用了。这次,里面又将MinGW打包进去了,给初装Qt的人省了一些事。

      这是我编译好的静态release版,有需要的可以直接取用,7z压缩包,文件大小75M左右
http://pan.baidu.com/share/link?shareid=313797&uk=673227135 (已经失效)
包含odbc,sqlite,没有webkit
(注:因为qmake.exe里面包含了install路径,如果不是解压到c:\Qt\目录下,需要修改在qmake.exe同一文件夹下的qt.conf文件
内容为
[paths]
Prefix = D:/Qt/5.0.1-rel-static(路径根据实际情况设)
注意,编码一定要ANSI格式,不能用UTF-8。路径分隔符用"/"或"\\")

一、文件准备,下面用到的文件,可以自行到相应官网下载。我在百度网盘上也共享了:

①    qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe
http://pan.baidu.com/share/link?shareid=277953&uk=673227135

②    qt-everywhere-opensource-src-5.0.1.zip
http://pan.baidu.com/share/link?shareid=277955&uk=673227135

③    Python2.7.3
http://pan.baidu.com/share/link?shareid=277966&uk=673227135

④    ActivePerl
http://pan.baidu.com/share/link?shareid=277968&uk=673227135

二、安装

①    安装qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe,我是安装在C:\QT\Qt5.0.1
②    将qt-everywhere-opensource-src-5.0.1.zip解压到C:\QT\
③    安装Python2.7.3, C:\Python27
④    安装ActivePerl, C:\Perl

三、编译准备
编辑C:\QT\qt-everywhere-opensource-src-5.0.1\qtbase\mkspecs\win32-g++\qmake.conf
找到QMAKE_LFLAGS和QMAKE_LFLAGS_DLL,后面赋值为-static
QMAKE_LFLAGS        = -static
QMAKE_LFLAGS_DLL        = -static
保存,退出

四、开始编译
开始==》程序==》Qt5.0.1==》MinGW 4.7==》Qt 5.0.1 for Desktop (MinGW 4.7)
进入命令窗口,输入命令
① cd C:\QT\qt-everywhere-opensource-src-5.0.1

② set path=PATH=C:\Python27;C:\Perl\site\bin;C:\Perl\bin;C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin;C:\Qt\Qt5.0.1/Tools/MinGW\bin;%path%

③ configure.bat -confirm-license -opensource -platform win32-g++ -release -static -ltcg -c++11 -prefix "C:\QT\5.0.1-rel-static" -accessibility -rtti -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -audio-backend -nomake docs -opengl desktop -no-qml-debug -no-vcproj -no-dbus -nomake tests -nomake examples -nomake demos -qt-freetype

④ 没出什么错误的话,mingw32-make

⑤  mingw32-make install

好了,大功告成了。在QtCreator中,加一个Qt Version,指定到 C:\QT\5.0.1-rel-static\bin\qmake.exe,就可以用了。
这样,如果用动态的,就用qt-windows-opensource-5.0.1-mingw47_32-x86-offline安装的,用静态的,就用自己编译的。










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

liulun:哥,我想把webkit也编译进去,我该怎么办啊。

2013-02-04 18:58 -

liulun:坐等您的回复,已经为这个事情发愁了好久了。

2013-02-04 18:59

realfan:要装icu才能编webkit。 印象中只在VC2010编译webkit过一次。后来就再没碰过。以后再试试。有人发的帖子,你参考一下http://www.qtcn.org/bbs/read-htm-tid-52162.html

2013-02-04 21:35

liulun:终于等到您的回复了,我现在就去看您发的链接,谢谢

2013-02-04 22:27

liulun:也希望您尽快试试吧,等您发新帖

2013-02-04 22:28

liulun:哇塞,那篇文章真心看不懂啊!!

2013-02-04 22:30

liulun:我已经成功用上您编译的QT了,但我真的、真的很想能把WEBKIT也编译进去,希望得到您的帮助

2013-02-04 22:49

liulun:我发现用官方QT(mingw)也无法编译示例中关于WEBKIT的DEMO,不知道是怎么回事,今天就到这了,明天一早来看老大的回复

2013-02-04 23:02

liulun:看来楼主已经放假回家了

2013-02-07 17:59
删除

梦枫鬼才:请问楼主,MinGW静态编译毫无疑问可以将Qt动态链接库整合,但是否能把MinGW的诸如libstdc++-6.dll之类的动态链接库也整合?也就是说,直接运行程序,不提示libstdc++-6.dll无法找到

2013-02-03 21:21 -

realfan:可以呀。用我提供的静态库和Qt5.0.1中带的mingw,生成的exe,不需要libstdc++之类的库,在干净的系统中,就可以独立运行。

2013-02-04 09:02

realfan:我试过tdm-mingw和Qt5.0.1中带的mingw,静态编译的都可独立运行。其它版本的mingw编译时,可能要加 -static-libgcc -static-libstdc++,才行

2013-02-04 09:04
删除

zaq2010:效率还真高 自己都编译过了   

2013-02-01 21:29 -
删除

zhaoomeng:大神,我看了您在qtcn上的帖子,我最近打算装qt,能加你qq吗?有问题我想随时请教您。

2013-02-01 16:54 -

realfan:在公司上不了QQ,直接在帖子里说吧。这里我经常来

2013-02-01 17:06

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