Windows 编译Qt比在OS X和Ubuntu下要困难得多,这是一件费力不讨好的的事情,主要问题在编译QtWebkit;但是开源的乐趣也在于每个人都能获得源代码,进行自定义编译。官方网站提供了MSVC2010预编译版本,在MSVC2012环境下无法使用;在http://sourceforge.net/projects/qt64ng/提供各种Windows平台下的非官方预编译Qt和QtCreator。
Windows平台下编译Qt花费了近2周的时间,按照网上许多编译教程得到的QtWebkit4.dll运行时出现错误(StackHash_0a9e),但是sourceforge.net上的非官方Qt的QtWebkit4.dll是正确的,开发者虽然给出了configure参数,但是没有给出具体编译步骤,依然无法编译出正确的QtWebkit4.dll;功夫不负有心人,终于搜索到一个编译的教程:
http://www.linuxfromscratch.org/blfs/view/svn/x/qt4.html
尽管是Linux平台下的教程,但是提供了一个QtWebkit源代码下载地址:
http://download.kde.org/stable/qtwebkit-2.3/2.3.4/src/qtwebkit-2.3.4.tar.gz
国内镜像可以从下面的地址下载:
http://mirrors.ustc.edu.cn/kde/stable/qtwebkit-2.3/2.3.4/src/qtwebkit-2.3.4.tar.gz
VS2012编译器安装与使用
安装Visual Studio 2012 Express for Desktop
使用Developer Command Prompt for VS2012终端来进行编译,下面的操作均采用这种方式;如果使用普通终端,则需要将C:\Program Files\Microsoft Visual Studio 11.0\VC\bin设为系统路径,并且每次开启后运行vcvars32.bat
参考:http://www.cnblogs.com/E7868A/archive/2012/11/15/2771501.html
先安装perl
http://www.activestate.com/activeperl
下载源代码
http://www.openssl.org/source/openssl-1.0.2d.tar.gz
解压缩到C:\Users\username\Downloads\openssl-1.0.2d
首先,切换到Openssl代码的根目录
cd C:\Users\username\Downloads\openssl-1.0.2d
如果你安装了NASM,可以用汇编的形式编译,以加快Openssl的运行速度
执行下面两句
perl Configure VC-WIN32 --prefix=C:\OpenSSL
ms\do_nasm
如果不想使用汇编编译,则执行下面两句就可以
--prefix是指定你要把OpenSSL安装的位置
perl Configure VC-WIN32 no-asm --prefix=C:\OpenSSL
ms\do_ms
开始编译
nmake -f ms\ntdll.mak
安装到prefix指定的目录中
nmake -f ms\ntdll.mak install
Building Qt-4.8.7 with MSVC 2012 express for Windows Desktop
下载Qt源代码(可以从中科大开源镜像下载)
解压缩