命令行编译Qt程序(nmake)

简介:

简述

前两节讲解了如何在Visual Studio和Qt Creator中搭建Qt开发环境,并分享了我们第一个小程序-Hello World。

下面分享如何使用命令行来编译Qt程序。当然,MSVC和MinGW的配置和编译过程相差无几。

编译Qt程序

1、新建一个”HelloWorld.cpp”文件,编写代码:

#include <QApplication>
#include <QLabel>

int main(int argc,char **argv)
{
    QApplication app(argc,argv);
    QLabel label("Hello World!");
    label.setAlignment(Qt::AlignCenter);
    label.resize(400, 300);
    label.show();
    return app.exec();
}

保存到指定位置(示例位置为”E:\HelloWorld”)。

这里写图片描述

2、选择”Visual Studio Tools”,打开命令行。

这里写图片描述

这里写图片描述

3、qmake -project QT+=widgets

切换到项目目录下,执行命令,切记后面加上指定的模块”QT+=widgets”,这相当于Visual Studio的Qt插件中Qt Project Settings里勾选了Qt modules的widgets模块。

这里写图片描述

这时,我们会发现项目目录下会生成.pro项目文件。

这里写图片描述

可以使用Notepad打开查看里面的内容。

######################################################################
# Automatically generated by qmake (3.0) ?? 11? 20 22:58:54 2015
######################################################################

QT+=widgets          #项目依赖的模块qmake -project QT+=widgets指定
TEMPLATE = app       #app代表可执行程序,及生成一个.exe
TARGET = HelloWorld  #可执行程序的名称HelloWorld.exe  
INCLUDEPATH += .     #包含路径为当前路径

# Input
SOURCES += HelloWorld.cpp  #项目包含的源文件

4、qmake

这时,项目目录下会生成一个debug和一个release目录、以及makefile文件。

这里写图片描述

5、nmake Debug Release

编译完成后,debug和release文件夹下面会生成了对应的exe。

这里写图片描述

6、运行

  1. 方式一:进入debug或release目录,直接双击exe。
  2. 方式二:命令行cd release,HelloWorld.exe

这里写图片描述

超级简单,有木有,O(∩_∩)O哈哈~。

注意事项

使用cmd命令行:

  • ‘nmake’不是内部或外部命令,也不是可运行的程序或批处理文件。

解决方式:

  1. 在环境变量中添加nmake的路径(Path=D:\Program Files\Microsoft Visual Studio 12.0\VC\bin)。

  2. 运行cmd后,将”D:\Program Files\Microsoft Visual Studio 12.0\VC\vcvarsall.bat”拖拽进去,然后回车,继续运行上述步骤。

双击运行exe

  • 无法启动此程序,因为计算机中丢失Qt5Core.dll。尝试重新安装该程序以解决此问题。

解决方式:

相关文章
|
24天前
【QT】读写.ini配置文件的程序实现
【QT】读写.ini配置文件的程序实现
|
1月前
|
开发框架 Unix Linux
深度探索:Qt CMake工程编译后的自动打包策略
深度探索:Qt CMake工程编译后的自动打包策略
33 0
|
1月前
|
Unix 编译器 开发者
Qt5.14.2 轻松掌握Qt中的压缩与解压缩:QuaZIP的神秘面纱与实战演练之windows环境编译
Qt5.14.2 轻松掌握Qt中的压缩与解压缩:QuaZIP的神秘面纱与实战演练之windows环境编译
|
3月前
|
C++
QT第一个程序命名空间详解,解释ui_widget的和xxx.cpp的联系
QT第一个程序命名空间详解,解释ui_widget的和xxx.cpp的联系
34 0
|
3月前
|
编译器
QT creator开发环境下 界面更改后运行程序不能实时更新或者在源文件添加该控件后无法编译的问题
在使用QT Creator开发界面的过程中,偶尔会出现添加控件后,运行程序后,界面控件无法更新的情况,或者在源文件使用该控件却出现无法编译的情况,使用QT Creator 4.8.2也会出现这个情况,也不知道这种情况会不会在以后有所改善。
66 0
|
9天前
|
数据可视化
实现Hello Qt 程序
实现Hello Qt 程序
|
24天前
|
编译器
正点原子IMX6ULL-安装交叉编译器、编译tslib触摸屏库、编译arm环境qt源代码
正点原子IMX6ULL-安装交叉编译器、编译tslib触摸屏库、编译arm环境qt源代码
|
1月前
|
Linux 开发工具 C语言
【研究Qt webengine 模块编译】linux 交叉编译qt5.12的webengine模块成功的条件
【研究Qt webengine 模块编译】linux 交叉编译qt5.12的webengine模块成功的条件
53 1
|
1月前
|
数据可视化
【Qt】—— Hello World程序的实现
【Qt】—— Hello World程序的实现
|
2月前
|
存储 C++ 开发者
QT基础【4-简易的图片查看程序】
QT基础【4-简易的图片查看程序】

推荐镜像

更多