nmake命令行编译Qt项目

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 )

?
1
2
3
4
5
< 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

?
1
< QTDIR >E:\cpp\Qt\4.8.4</ QTDIR >

注:

qmake编译最初参考于:《C++GUI Qt4编程》p3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值