Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4252|回复: 7
打印 上一主题 下一主题

QT源码下载编译

[复制链接]

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
跳转到指定楼层
楼主
发表于 2016-7-5 09:26:44 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
回复

使用道具 举报

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
沙发
 楼主| 发表于 2016-7-5 17:09:10 | 显示全部楼层
本帖最后由 hechengjin 于 2016-7-5 17:11 编辑

http://jingyan.baidu.com/article/0aa2237554f1db88cc0d6417.html

Qt5.4静态编译方法







    静态编译,就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so或.lib)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。这样就可以发布单一文件的EXE程序了。

工具/原料
  • Qt库
  • Python
  • Perl
  • Ruby


安装Perl
  • 1

    双击从官网下载的安装包进入安装界面

  • 2

    安装时注意选择这两项



    END


安装Python
  • 1

    双击从官网下载的安装包进入安装界面

  • 2

    安装完成后,需要将安装目录添加到系统环境变量Path中



    END


安装Ruby
  • 1

    双击从官网下载的安装包进入安装界面

  • 2

    注意选择这一项



    END


安装Qt
  • 1

    方法一:从官网下载源码zip压缩包直接解压即可
  • 2

    方法二:从官网下载对应编译器的安装包进行文件安装
  • 3

    安装完成后,需要将安装目录添加到系统环境变量Path中



    END


静态编译Qt
  • 1

    打开命令行


  • 2

    输入gcc -v命令查看gcc编译器是否正确;配置正确,如下图所示

  • 3

    输入perl -v命令查看Perl解析器是否配置正确,配置正确显示如下图

  • 4

    输入python命令查看Python是否配置正确,正确显示如下图,按Ctrl+Z回车可以退出Python

  • 5

    切换到Qt源码目录,假设为D:\Qt
    命令为:
    D:
    cd D:\Qt
    上述路径可以根据自己的实际路径进行修改

  • 6

    输入如下命令进行配置
    configure.bat -confirm-license -opensource -platform win32-g++ -mp -release -static -prefix "C:\Qt\5.4.0_MinGW_static" -qt-sql-sqlite -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebkit -skip qtwebengine
    其中的"C:\Qt\5.4.0_MinGW_static"为生成的静态编译代码库的路径,可以根据自己的需求进行相应更改

  • 7

    配置完成如下图所示

  • 8

    输入以下命令进行编译
    mingw32-make
    过程较长,大约几小时
  • 9

    输入以下命令进行安装
    mingw32-make install
    安装完成如下图所示



    END


配置Qt Creator
  • 1

    添加上一部编译好的静态Qt版本
    Qt Creator -> Tools -> Options -> Build & Run -> Qt Versions,点击Add添加qmake,如图所示


  • 2

    添加完成,点击“Apply”

  • 3

    设置套件
    切换到“Kits”选项卡,点击“Add”如图进行配置,完成后点击OK退出设置

  • 4

    打开C:\Qt\5.4.0_MinGW_static\mkspecs\win32-g++\qmake.conf,找到QMAKE_LFLAGS和QMAKE_LFLAGS_DLL,将后面改成-static,如图所示



    END


如何使用静态编译库
  • 1

    至此Qt5.4.0静态编译配置完成
  • 2

    新建工程时选择静态编译的套件,如图所示

  • 3








  • 对工程进行编译时选择Release版本,如图所示






回复 支持 反对

使用道具 举报

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
板凳
 楼主| 发表于 2016-7-6 14:16:10 | 显示全部楼层
VS2013编译Qt5.7.0 64位静态库debug-and-release版及结果分享

1. 下载zip源码,我下载的是qt-everywhere-opensource-src-5.7.0.zip这个文件。
2.安装python
3.解压缩qt-everywhere-opensource-src-5.2.1.zip文件,修改
qtbase\mkspecs\win32-msvc2013\qmake.conf文件,将
1. QMAKE_CFLAGS_RELEASE    = -O2 -MD  
2. QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi  
3. QMAKE_CFLAGS_DEBUG      = -Zi -MDd  
改为
1. QMAKE_CFLAGS_RELEASE    = -O2 -MT  
2. QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi  
3. QMAKE_CFLAGS_DEBUG      = -Zi -MTd  
4.vs2013开发人员命令提示界面运行configure,我使用的配置参数为:
configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix "C:\Qt\5.7.0-static-vs2013" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebkit
configure -prefix %CD%\qtbase
configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix "C:\Qt\5.7.0-static-vs2013"
configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix "C:\Qt\5.7.0-static-vs2013"
5.使用nmake开始编译,i3-2100m双核,4G内存的配置下,大约2个多小时就能编译完成。
6.使用nmake install安装到指定目录。
这样在win8.1+vs2013的环境下编译出的Qt5静态库,应该能够直接兼容WinXP

回复 支持 反对

使用道具 举报

388

主题

602

帖子

2218

积分

金牌会员

Rank: 6Rank: 6

积分
2218
地板
 楼主| 发表于 2016-7-6 19:43:57 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-5 06:23 , Processed in 0.061965 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表