本文将讲述如何在Windows系统中,使用Qt源码,编译并且安装,以制作出可以一键静态编译Qt版本
我使用的系统是:Windows10 64位 专业版
Qt版本是:Qt 5.6.0 for Android (Windows 32-bit, 1.1 GB)
Qt 5.6.0 for Windows 32-bit (MinGW 4.9.2, 1.0 GB) 也是可以的
大致流程:
1.安装Qt(包括源码)以及其他必要的环境
2.编译与安装
3.配置
4.使用
~~~~~~~~~~正文分割线~~~~~~~~~~
1.安装Qt(源码版)
1.1 下载VS2013运行库并安装
5.6这一次不知道怎么回事,安装包里面没带2013的运行库,结果纯净系统里,连安装包都运行不起来,直接运行会这样
不过这个解决也方便,下载一个2013的运行库并安装下就行了。
我下载的是:vcredist_x86.exe
下载页面:Download Visual C++ Redistributable Packages for Visual Studio 2013 from Official Microsoft Download Center
1.2 下载Qt
安装包:Qt 5.6.0 for Android (Windows 32-bit, 1.1 GB)
下载地址:Qt - Download Open Source Step 3
1.2 安装Qt
这里可以选择“Skip”或者登陆一下帐号,效果都一样。
我安装到了 C:\Qt\Qt5.6.0
注意:源码那里也要勾上,默认是不勾选的
注:安装好Qt后,将bin目录添加到PATH环境变量中
1.4 安装Perl
我选择的是ActivePerl-5.22.1.2201-MSWin32-x64-299574.msi
安装包:Windows Installer (MSI)
官网地址:ActivePerl Downloads - Perl Binaries for Windows, Linux and Mac
1.3 安装 Python
我选择的是python-3.5.1.exe
安装包:Windows x86 executable installer
官网地址:Download Python | Python.org
注:安装好Python后,将安装目录添加到PATH环境变量中(安装的时候如果选上“Add Python 3.5 to PATH”会自动添加)
环境变量配置:
2.编译/安装
2.1 在左下角菜单里找到命令行,并打开
2.2 检查
输入以下命令看看 gcc 编译器是否配置正确,
gcc -v
再输入以下命令看看 perl 解释器是否配置正确
perl -v
输入以下命令看看 python 是否配置正确
python
按 Ctrl + Z 回车,可以退出 python
2.3 配置Qt(1分钟左右)
切换到Qt的源码目录
cd C:\Qt\Qt5.6.0\5.6\Src
运行命令
configure.bat -confirm-license -opensource -platform win32-g++ -mp -debug-and-release -static -prefix "C:\Qt\5.6.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 qtwebengine -skip qtwebview -skip qt3d
注:这里配置的时候,跳过了qtwebengine、qtwebview、qt3d,如果需要这些模块可以去掉skip
2.4 编译(3小时左右)
mingw32-make -j2
注:本处为2个线程编译,电脑好的可以开更多的线程,编译速度也更快
2.5 安装(20分钟左右,硬盘好的话会快点)
mingw32-make install
2.6 后续
在编译/安装好后,我们可以把源码目录删了,这可以释放出大约8G的空间,很可观
3.配置
3.1 添加一个Qt版本
3.1.1 打开版本编辑器
打开Qt Creator -> 工具 -> 选项 -> 构件和运行 -> Qt Versions
3.1.2 按照下图添加Qt版本,然后点Apply
3.2 设置编译器(如果有则不需要设置)
按照下图添加,然后点Apply
3.3 设置套件
按照下图添加,然后点Apply
3.4 配置编译器
用记事本打开 C:\Qt\5.6.0_MinGW_static\mkspecs\win32-g++\qmake.conf
找到 QMAKE_LFLAGS 和 QMAKE_LFLAGS_DLL
将后面都改成 -static
4.使用
4.1 打开Qt,新建工程,选择静态编译的套件
4.2 左下角选择release模式
注:静态编译的话,别选择debug,不然的话,编译是没问题,但是编译出来的exe非常大,几百mb
4.3 Ctrl+B编译,然后,静态编译版本的exe就完成了
~~~~~~~~~~
最后呢,如果你觉得自己做一个静态编译版本的Qt太麻烦,也可以用我这个做好了的。
http://blog.csdn.net/wsj18808050/article/details/50935343
这是一个虚拟机,还包含了Android的开发环境,具体介绍这里面有。