Qt5-msvc2012编译安装

Qt5发布已经有一段时间了,从官网下载的Windows编译版本是基本msvc2010的,Debug版本程序编译有问题,所以尝试了自行编译;开始尝试使用mingw 4.7.2编译Qt5,碰到了内存分配错误,在网上查找未找到有效的解决方案,所以最后转而使用msvc2012编译Qt。

下面是文中源码的目录结构:

D:\SDK\Qt
       ├─5.0.0
       │  ├─msvc2012
       │  └─src
       └─third
           ├─icu
           └─openssl-1.0.1c

1. 编译环境准备

下载安装Visual Studio 2012 Express、Windows Kit 8;

2. 编译第三方库

第三方库这里主要用到了icu, openssl,这两个库应该是可选,如果configure的时候不需要,这一步应该可以跳过;安装方法可以查看相关readme文件;

3. 下载Qt5源代码

http://qt-project.org/downloads

4. 配置相关环境变量

下面是自己做的一个批处理文件,使用时需要调整安装包的路径:

@echo Setting Qt Build Env... 

@CALL "C:\Program Files\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" 

set QT5_DIR=D:\SDK\Qt\5.0.0
set THIRDPARTY_DIR=D:\SDK\Qt\third
set JOM_DIR=D:\SDK\Qt\jom

@cd /d %QT5_DIR%\src
set INCLUDE=%THIRDPARTY_DIR%\icu\include;%THIRDPARTY_DIR%\openssl-1.0.1c\msvc2012\include;%INCLUDE% 
set LIB=%THIRDPARTY_DIR%\icu\lib;%THIRDPARTY_DIR%\openssl-1.0.1c\msvc2012\lib;%LIB% 
set PATH=%CD%\qtbase\bin;%CD%\gnuwin32\bin;%JOM_DIR%;D:\SDK\Perl\bin;D:\SDK\Python27;D:\SDK\ruby-1.9.3-p362-i386-mingw32\bin;%THIRDPARTY_DIR%\icu\bin;%THIRDPARTY_DIR%\openssl-1.0.1c\msvc2012\bin;D:\Program Files\PortableGit\cmd;%PATH% 

@echo Finished.

5. 根据需要配置生成Makefile文件

打开cmd窗口,运行上一步配置的批处理脚本;使用configure.bat生成Makefile文件:
如果跳过第2步,这里要去掉-icu, –openssl选项;注意-prefix选项,这个是用来配置Qt5编译完成后安装路径的,下面是我的安装路径:

configure -prefix D:\SDK\Qt\5.0.0\msvc2012 -opensource -confirm-license -platform win32-msvc2012 -developer-build -c++11 -icu -opengl desktop -openssl -nomake tests -nomake examples

6. 编译安装Qt5开发库

使用jom工具或nmake编译Qt5,jom可以充分利用多核CPU性能,下方以jom命令为例,可以更换为nmake;

jom是用来编译库文件的,完成后使用jom install命令安装开发需要的文件到-prefix变量设置的目录:

jom
jom install

7. 编译安装Qt5帮助文件

编译安装Qt5是默认是没有编译安装帮助文件的,需要手动编译安装:

jom docs
jom install_docs

 

遗留问题:

Qt Assistant打不开,这个问题还没有解决,目前查看帮助文档可以在Qt Creator中查看。

参考文档:

1. http://qt-project.org/wiki/Building_Qt_5_from_Git

2. http://qt-project.org/wiki/Building_Qt_5_Documentation

posted @ 2013-01-19 09:16  Wader  阅读(2925)  评论(0编辑  收藏  举报