为Visual Studio 2012编译Qt 4.8.x
我应该采取什么步骤编译Visual Studio 2012的Qt(版本4.8.x)?
我已经仔细地按照这个问题的接受的答案(这是VS 2010)的指示,但WebKit模块未能编译(我不知道如果错误消息logging在编译过程中的任何地方)。
我也看到了同样的问题,但VS 2012 RC(这就是为什么我认为这不会是一个重复的问题)。 此外,回答者说,他已经编译了Qt for VS 2011 Beta,所以有可能它不适用于VS 2012(RTM)。 编译花了很多时间,这就是为什么我还没有尝试过。
我意识到至less有一个问题是Qt\mkspecs
没有win32-msvc2012
目录。 我应该只是创build该目录并从win32-msvc2010
复制文件,可能有一些修改?
另一个子问题是在开始编译之前是否应该对Qt源进行一些修改。
Qt 4.8.3与Visual Studio 2012 x64(也应该使用4.8.2)
-
安装草莓Perl
-
从http://qt-project.org/downloads下载Qt 4.8.3源代码
-
转到
mkspecs\win32-msvc2010
。 打开qmake.conf
并更改:QMAKE_COMPILER_DEFINES += _MSC_VER=1600 WIN32
至:
QMAKE_COMPILER_DEFINES += _MSC_VER=1700 WIN32
-
用这个
HashSet.h
replaceqt-everywhere-opensource-src-4.8.3-x64\src\3rdparty\webkit\Source\JavaScriptCore\wtf\HashSet.h
HashSet.h
。 -
启动“VS2012 x64本地工具命令提示符”
-
切换到Qt 4.8.3源码目录(包含
configure.exe
的目录) -
跑:
configure -mp -opensource -nomake demos -nomake examples -platform win32-msvc2010
-
其次是:
nmake
我编写了一个名为BlueGo的工具,它自动下载Qt 4.8.3,并用VS2012 x64构build它: http ://bluego.vertexwahn.de(也适用于VS2010 x64)(它只是自动完成上面描述的)
Qt 4.8.4需要比上面Vertexwahn所描述的更less的调整。
- 在从档案中提取Qt之后,HashSet仍然必须修复(参见Vertexwahn的修复 )。
- 尽pipe平台win32-msvc2012是支持的(也适用于64位环境中的64位,不要问为什么他们把它命名为Win32)。
所以简单地replaceHashSet.h并编译。
只要创build一个win32-msvc2012目录下面的更改没有为我工作,需要更多的编辑。 在你已经链接的线程中描述了什么是必要的。
我做了什么,我去了win32-msvc2010。
在那里,打开qmake.conf并更改
QMAKE_COMPILER_DEFINES + = _MSC_VER = 1600 WIN32
至
QMAKE_COMPILER_DEFINES + = _MSC_VER = 1700 WIN32
然后我可以使用win32-msvc2010进行configuration。
另外,我使用了这些变化: http ://qt-project.org/forums/viewthread/17771(alzi的版本)
- 如何从form2更新form1中的文本框?
- C / C ++:强制位字段顺序和alignment
- 使用Xamarin Vs开发android应用程序Native android
- 如何在Razor中声明局部variables?
- while循环与空身体检查挥发性整数 – 这是什么意思?
- 无法加载文件或程序集“Microsoft.CodeAnalysis,版本= 1.3.1.0,文化=中立,PublicKeyToken = 31bf3856ad364e35”或其依赖项之一
- 如何比较颜色对象,并得到最接近的颜色在颜色?
- 是否有一个Linq方法添加一个单一的项目的IEnumerable <T>?
- 请求调用存储过程C#:MYSQL的合法示例