Qt怎样采用命令行提示符程序进行程序编译

在Qt Creator等IDE(集成开发环境)中编译Qt程序是一件很容易的事情,它们将工程的目录管理/源代码编辑/程序编译运行都集中在了一起,IDE已经做了大部分的工作;但是,生成的项目目录中的每个文件是什么?它们的作用是什么?相互之间的关系是怎样的?Qt程序究竟是怎样编译运行的?解决这些问题是学习和认识Qt编程的关键。相比之下,命令行提示符程序编译具有轻巧、快速、内存占用小等特点;而且,使用命令行编译程序能够帮助我们学习和理解Qt程序开发。

自从Qt从Qt4升级到Qt5后,带来很大的变化,主要是模块构架发生了本质的变化,要想使用原来的方法进行命令行提示符编译也越来越困难。

那么,Qt命令行提示符程序编译究竟应该如何进行呢?下面,我将以在Windows10操作系统下使用命令行提示符程序编译Qt5.6程序(helloworld程序)为例,来向大家做详细讲解命令行提示符程序的环境变量设置,编译命令,以及其他注意事项。

0 Qt怎样进行命令行编译

工具/原料

qt-opensource-windows-x86-mingw492-5.6.0

Windows10

第一步:环境变量配置

也许在qt4版本中,要想使用Qt进行命令行编译,环境配置是必不可少的一步;否则,我们无法使用相应的qmake,make等命令,并且链接到编译程序时所需要的头文件和库文件。

但是在qt5.6版本中则不用担心这个问题(其他版本我没有试验过,有兴趣的同学可以去试试),qt5.6的命令行提示符程序启动后会自动调用Qt安装目录下的批处理文件qtenv2.bat设置环境变量,包括qmake和mingw32-make命令的目录,批处理文件和命令行提示符程序启动窗口截图,如下图所示。

第二步:源代码编写和命令行编译

新建工程目录,比如C:\Qt\helloworld;编写源代码,采用任何一种文本编辑器编写源程序代码,并保存为.cpp文件,比如helloworld.cpp。提示:文本编辑器的保存必须具备设置编码格式的功能,保存编码设置为UTF-8,否则qt5将无法正确识别中文字符。本经验采用的UltraEdit编辑器编写代码。

然后,在“开始”菜单中打开“Qt 5.x for Desktop(MinGW X 32 bit),即打开命令行提示符程序窗口。注意:如果直接采用系统的命令行提示符程序,这必须设置qmake和mingw32-make(qt5 for window编译器为MinGW,所以make命令为mingw32-make)的环境变量,设置方法参考引用经验。

0 Qt怎样进行命令行编译

通过cd命令进入项目目录中;

使用qmake -project命令生成工程文件;

使用qmake命令生成Makefile文件,包括3个makefile文件(Makefile,Makefile.Debug,Makefile.Release),两个空的debug和release文件夹;

使用分别mingw32-make -f Makefile.Debug和mingw32-make -f Makefile.Release生成Debug版和Release版的可执行文件。编译命令和结果文件如图所示。

最后,使用cd命令到debug和release目录下,输入helloworld.exe,运行程序。

注意事项

1,在使用qmake -project命令生成pro文件后,一定要对pro文件进行检查,qt5要求pro文件中包含该命令行:greaterThan(QT_MAJOR_VERSION, 4): QT +=widgets;否则程序无法正确编译。

2,如果想直接双击helloworld.exe启动程序,必须在系统环境变量中配置了qt的bin目录,否则程序会提示找不到运行库文件。

标签:文件, 程序, 命令行, 编译, 提示符
分类:电脑软件
时间:2016-06-03

Qt怎样采用命令行提示符程序进行程序编译的相关文章

Windows环境下如何打开命令行提示符

本文以图片和说明,手把手教你在Windows环境下用不同的方法打开命令行提示符。

cmd无法使用怎么办,命令行提示符不能用怎么办

有很多时候我们可以通过命令行提示符来控制电脑开关机,打开关闭服务等,使我们操作更方便,但cmd无法使用怎么办,下面小编来分享一下方法

【MySQL教程】从命令行提示符关闭服务器

我现在详细教你如何上命令行提示符关闭服务器,操作步骤如下。

Qt怎样进行命令行编译

相比在集成开发环境中编译Qt程序,命令行编译具有轻巧、快速、内存占用小等特点。而且,使用命令行编译,能够使我们在学习Qt程序开发时更加深入地理解相关原理。不过,由于Qt近些年来升级换代后越来越复杂,要想进行命令行编译也越来越困难。编译的命令虽然更改不大,可是环境配置却是难上加难——且不说新手,就连老鸟都很难搞定。那么,Qt命令行编译究竟应该如何进行呢?下面,我就以在Windows下使用命令行编译Qt程序为例,来向大家做详细说明。

命令行下的debug程序的另类用法

在我们购买电脑时,需要检测电脑屏幕是否有坏点。一般电脑都预装了操作系统,我们可以借助系统自带的debug程序进行检测。此方法适合于安装了windows操作系统的电脑。

如何在dos命令行中运行java程序

在学习过程中,会有用到Windows窗口运行文件的情况。一开始不免让人对这些步骤充满疑惑,其实了解学习之后,就会发现其实并不复杂。这里介绍了简要的步骤方法,希望可以在学习上帮到大家。

linux下 如何修改命令行提示符路径提示符路径长度

基本上Linux系统下默认的路径提示为完整的路径,虽然是完整的路径但是真的很长,看上去很不方便,是指有时候可能会占全部的宽度,看上去让人眼花缭乱,就像下面的例子: linuxidc@Ubuntu:~/trunk-new/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.10.17/net/netfilter/commercials$ 基本占用终端80%的宽度,如果能改成只显示最后一个文件夹的

在Windows2008下如何通过命令行来管理磁盘

Windows Server 2008的一个特性在于,操作系统的许多方面的功能都可以通过命令行方式进行管理。如果我们在一台带GUI界面的电脑上正好需要定义一个RAID阵列,通常是比较容易实现,在磁盘管理控制台程序重点击几下鼠标即可完成安装操作。 如果需要对多台机器进行同样的RAID操作,采用脚本的方式效率会更高一些。同样,如果我们正在进行Server Core的安装,那就没有其它选择,只能从命令提示符下管理自己的磁盘子系统。本文中,将介绍如何采用命令行方式实现上面提到的功能。 1、D

鲁大师支持命令行吗?

支持!考虑到命令行用户较少,目前尚未向用户推荐。具体如下: 在命令行下进入鲁大师所在目录,输入“鲁大师主程序文件名”+空格+“输出的文件名”。 范例如下: cd d:ludashi d:ludashiComputerZ_CN.exe out.txt 待鲁大师执行完毕即可生成检测文件out.txt 备注: (1)、目前支持两种命令行输出格式,Txt和Ini (2)、若在Vista下使用命令行,需要以管理员身份运行附件中的命令行提示符。