Visual Studio 2010使用Qt
决定减少使用WTL用Qt,想要在Visual Studio下使用Qt需要先下载Qt的Windows SDK和Qt的Visual Studio AddIn,可以去官网下载。之后分别安装SDK和AddIn。由于Qt默认使用了mingw编译,所以需要重新编译。打开Visual Studio Command Prompt (2010),cd到Qt安装目录的qt文件夹,例如:
E:
cd E:\Coding\Qt\2010.05\qt
再次输入configure -platform win32-msvc2010
选择O和Y开始等待配置编译环境,整个过程大概需要10分钟左右,之后输入nmake开始编译(编译时间较长,但是建议不要睡觉,当中会有编译失败问题)。如果出现提示诸如:
NMAKE : fatal error U1077: ‘”d:\Program Files\Microsoft Visual Studio 10.0\VC\BIN
\nmake.exe”‘ : return code ’0×2′
Stop.
NMAKE : fatal error U1077: ‘cd’ : return code ’0×2′
Stop.
可以查看上面提示错误的文件信息删除对应tmp\moc目录下debug_shared和release_shared下的mocinclude.tmp并再次输入nmake继续编译。比如:
qt\src\3rdparty\webkit\WebCore\tmp\moc\debug_shared\mocinclude.tmp
qt\src\3rdparty\webkit\WebCore\tmp\moc\release_shared\mocinclude.tmp
由于是昨天早晨才完成编译,特此补上一篇使用后发现的问题。假设你已经使用Visual Studio 2010自带的编译器成功编译,并安装AddIn。运行Visual Studio 2010,点击Qt菜单 -> Qt Options,发现没有任何Qt版本。点击添加并指定Qt路径后会提示当前默认使用的是mingw编译,无法完成添加。国外论坛有人提到这是Qt配置的一个bug,解决方法是修改注册表文件在里面添加Qt版本。regedit -> HKEY_CURRENT_USER\Software\Trolltech\添加一个Versions子项 -> 添加一个版本子项(比如Qt201005)-> 添加一个字符项InstallDir值为qt目录。再次运行Visual Studio 2010重复之前进入Qt Options操作就可以看到了。然后随便打开一个示例项目查看并运行,以examples下的animation为例,运行时提示没有找到QtGuid4.dll和QtCored4.dll,可根据缺少关联dll的提示直接将bin目录下的dll复制到执行文件目录内,运行OK(Debug版本就是在版本号前有一个d,比如Release版本的QtGui4.dll,那么Debug版本就是QtGuid4.dll)。