以前使用Qt进行界面开发,都是直接在Qt Creator下新建Qt Gui application 工程,设计好相关控件后直接运行。在不需对其底层的编译机制进行了解的情况下也可以进行程序开发,最近由于项目需要,重新拾起了Qt,想用Qt提供的qmake工具进行程序的开发,下面利用简单的Hello world程序了解qmake工具生成可执行文件的过程!
1.创建一个hello目录,在该目录下新建helloworld.cpp源文件。代码如下
#include <QApplication>
#include <QLabel>
int main(int argc, char **argv)
{
QApplication app(argc, argv); //QApplication对象管理整个应用程序用到的资源
QLabel *label = new QLabel("Hello World!"); //QLabel 窗口部件创建
label->show();
return app.exec();
}
2. qmake工具的使用
在hello目录下,输入如下命令,生成一个与平台无关的项目文件hello.pro
qmake -project
这时你在hello目录下发现有个hello.pro. 在输入以下命令,从这个项目文件中生成一个与平台有关的Makefile文件:
qmake hello.pro
这时在你hello目录下会多了一个Makefile文件,此时运行make命令就可以构建该程序,输入 ./hello 即可运行程序。
以上就是简单利用qmake工具来生成可执行文件的过程。
3.利用shell脚本来简化qmake的编译过程
当你想新建一个新的项目时,编译源程序qmake的过程都是一样的,为了减少工作量,可以将qmake的工作过程放在一个shell脚本中,编辑好源文件后直接运行该脚本,就可直接生成可执行文件。
一般我都会在主目录下新建一个bin目录,里面存放一些自己编写的脚本文件,方便自己对系统进行配置。前提是该bin目录已经添加进了PATH环境变量里面。直接在你主目录下的.bashrc文件中加入 PATH=$PATH:主目录/bin。以下是我新建的有关qmake的脚本文件qmake.sh内容。
#! /bin/sh
qmake -project
a=`pwd`
qmake $a/*.pro
make
运行该脚本系统不认识可能qmake,这时你只需将你Qt安装目录下包含qmake命令的bin目录添加到系统PATH路径中(同上)。
以后编写完Qt源程序后,直接就可以运行脚本命令 bash qmake.sh 就可在工作目录下自动生成可执行文件。
以上讲的较简单,只是想分享下学习经历,有什么建议望指正!