Part Ⅰ
环境:
1)VS2010
目录:E:\Program Files (x86)\Microsoft Visual Studio 10.0
2)VS的Qt插件(qt-vs-addin-1.1.11-opensource.exe)
3)Qt for vs2010 (qt-win-opensource-4.8.4-vs2010.exe)
目录:E:\cpp\Qt\4.8.4
Part Ⅱ
1.打开VS2010中的 Visual Studio 命令提示(2010),此时就可以使用nmake了
可以看一下path,多了很多VS中的目录。
2.设置Qt环境变量,使之能够使用qmake。
set path=%path%;E:\cpp\Qt\4.8.4\bin"
E:\Program Files (x86)\Microsoft Visual Studio 10.0\VC>set path=%path%;E:\cpp\Qt
\4.8.4\bin
再次查看path可以看到多了E:\cpp\Qt\4.8.4\bin
3.切换到项目目录
E:\Program Files (x86)\Microsoft Visual Studio 10.0\VC>cd E:\Projects\Qt\Demo\Demo
4.使用qmake生成pro文件。
E:\Projects\Qt\Demo\Demo>qmake -project
如:qmake -project QT+=network
QT+=network 添加network 模块,相当于VS的Qt插件中的Qt Project Setting 里Qt modules
可以发现生成的pro文件中多了一项。
使用qmake --help (--help,linux风格)查看帮助信息
5.生成makefile文件
E:\Projects\Qt\Demo\Demo>qmake Demo.pro
RCC: Warning: No resources in 'Demo.qrc'.
RCC: Warning: No resources in 'Demo.qrc'.
6.编译项目
E:\Projects\Qt\Demo\Demo>nmake Debug Release
nmake 默认生成Debug
..............
各种编译信息或者警告信息之后(元对象编译过程也能看见--生成moc_*.cpp文件)
最后在Debug和release目录下可找到执行文件。
nmake /? (/? windows 风格)nmake帮助信息
7.运行
E:\Projects\Qt\Demo\Demo>cd release
E:\Projects\Qt\Demo\Demo\release>Demo.exe
oh,so prefect!
Part Ⅲ
解决VS2010上Qt版本更新后,不能编译旧版本项目问题。
编译的时候出现:
The following error occured:
There's no Qt version assigned to this project for platform Win32. Please use the 'change Qt version' feature and choose a valid Qt version for this platform.
翻遍所有设置都没有找到设置版本的地方,索性手工改项目配置文件(只是xml文件而已)
1.修改vcxproj文件
用文本编辑器打开Demo.vcxproj,查找Qt版本号(我的是4.8.4 )
<ProjectExtensions> <VisualStudio> <UserProperties UicDir=".\GeneratedFiles" MocDir=".\GeneratedFiles\$(ConfigurationName)" MocOptions="" RccDir=".\GeneratedFiles" lupdateOnBuild="0" lupdateOptions="" lreleaseOptions="" QtVersion_x0020_Win32="4.8.4" /> </VisualStudio> </ProjectExtensions>
QtVersion_x0020_Win32="4.8.4"
2.修改user文件
用文本编辑器打开Demo.user
<QTDIR>E:\cpp\Qt\4.8.4</QTDIR>
注:
qmake编译最初参考于:《C++GUI Qt4编程》p3
发于:http://blog.ownku.com/?p=152