1. TEMPLATE
变量TEMPLATE描述了为建立目标文件而采用何种模板,即生成何种形式的Makefile文件。Qmake
工具定义了5种模板:
1. 应用程序App,为建立一个Qt应用程序创建Makefile文件;
2. 库lib,为建立引用程序库而创建Makefile文件;
3. 子工程 subdirs,为建立子目录下的目标文件创建一个Makefile文件,
子目录通过变量SUBDIRS指定(子目录下的工程文件也需要指出使用何种模板);
4. VC应用程序vcapp,为Visual Studio 生成一个应用程序工程,仅仅用语Windos操作系统.
5. VC库vclib,为Visual Studio生成一个应用程序库工程,仅仅用语Windows操作系统.

{

app – 建立一个应用程序的makefile。这是默认值,所以如果模板没有被指定,这个将被使用。

lib – 建立一个库的makefile。

vcapp – 建立一个应用程序的Visual Studio项目文件。

vclib – 建立一个库的Visual Studio项目文件。

subdirs – 这是一个特殊的模板,它可以创建一个能够进入特定目录并且为一个项目文件生成makefile并且为它调用make的makefile。

“app”模板
“app”模板告诉qmake为建立一个应用程序生成一个makefile。当使用这个模板时,下面这些qmake系统变量是被承认的。你应该在你的.pro文件中使用它们来为你的应用程序指定特定信息。

}

2.HEADERS - 应用程序中的所有头文件的列表。

3.SOURCES - 应用程序中的所有源文件的列表。

4.FORMS / INTERFACES – 应用程序中的所有.ui文件(由Qt设计器生成)的列表。    eg.INTERFACES = filename.ui

5.LEXSOURCES – 应用程序中的所有lex源文件的列表。

6.YACCSOURCES – 应用程序中的所有yacc源文件的列表。

7.TARGET – 可执行应用程序的名称。默认值为项目文件的名称。(如果需要扩展名,会被自动加上。)

8.DESTDIR – 放置可执行程序目标的目录。

9.DEFINES – 应用程序所需的额外的预处理程序定义的列表。

10.INCLUDEPATH - 应用程序所需的额外的包含路径的列表(include文件路径列表)。

11.DEPENDPATH – 应用程序所依赖的搜索路径(描述了建立应用程序所依赖的其他文件所在的路 径)。

12.VPATH – 寻找补充文件的搜索路径。

13.DEF_FILE - 只有Windows需要:应用程序所要连接的.def文件。

14.C_FILE - 只有Windows需要:应用程序的资源文件。

15.RES_FILE – 只有Windows需要:应用程序所要连接的资源文件。

16.CONFIG变量
配置变量指定了编译器所要使用的选项和所需要被连接的库。配置变量中可以添加任何东西,但只有下面这些选项可以被qmake识别。

下面这些选项控制着使用哪些编译器标志:

release – 应用程序将以release模式连编。如果“debug”被指定,它将被忽略。

debug – 应用程序将以debug模式连编。

warn_on – 编译器会输出尽可能多的警告信息。如果“warn_off”被指定,它将被忽略。

warn_off - 编译器会输出尽可能少的警告信息。

注意事项:

注:qmake -project 可以生成pro文件(可以根据项目需要,编辑改文件)
qmake 可以生成Makefile文件
make 编译
使用qmake -project时,会把本目录及其子目录内所有.cpp .h文件加入到项目输入文件中,使用时注意移去其他无用的文件。
qmake生成的Makefile文件,可以根据需要做相应修改。

Qt .pro文件 详解的更多相关文章

  1. Qt .pro文件详解

    在我们创建Qt工程项目时,Qt Creator总会创建一个.pro文件,我们称.pro文件为Qt的工程管理文件.一个工程项目可以包含一个或多个.pro文件.理解和掌握pro文件的用法,将有利于Qt开发 ...

  2. QT学习日记篇01(1)-QT界面初探- *.pro文件详解

    一: 项目管理文件(.pro文件) 项目管理文件用于记录项目的一些设置,以及项目包含文件的组织管理 后缀为".pro"的 文件是项目的管理文件,文件名就是项目的名称,如Demo.p ...

  3. QT信号槽详解

    1         QT信号槽详解 1.1  信号和槽的定义 信号是触发信号,例如按钮的点击触发一个clicked信号,槽是用来接收信号,并处理信号,相当于信号响应函数.一个信号可以关联多个槽函数,信 ...

  4. web.xml文件详解

      web.xml文件详解 Table of Contents 1 listener. filter.servlet 加载顺序 2 web.xml文件详解 3 相应元素配置 1 listener. f ...

  5. Linux中/proc目录下文件详解

    转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统 ...

  6. SUBLIME TEXT 2 设置文件详解

    SUBLIME TEXT 2 设置文件详解 Preferences.sublime-settings文件: // While you can edit this file, it’s best to ...

  7. [转]AndroidManifest.xml文件详解

    转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml ...

  8. delphi 资源文件详解

    delphi资源文件详解 一.引子: 现在的Windows应用程序几乎都使用图标.图片.光标.声音等,我们称它们为资源(Resource).最简单的使用资源的办法是把这些资源的源文件打入软件包,以方便 ...

  9. VSFTPD全攻略(/etc/vsftpd/vsftpd.conf文件详解)

    /etc/vsftpd/vsftpd.conf文件详解,分好类,方便大家查找与学习 #################匿名权限控制############### anonymous_enable=YE ...

随机推荐

  1. 如何在Oracle中建立表和表空间?

    1.建表空间 ORACLE中,表空间是数据管理的基本方法,所有用户的对象要存放在表空间中,也就是用户有空间的使用权,才能创建用户对象.否则是不充许创建对象,因为就是想创建对象,如表,索引等,也没有地方 ...

  2. OPTION SQL_SELECT_LIMIT=DEFAULT'

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version ...

  3. eclipse 使用tomcat7.0建立Dynamic Web Project 时 web.xml的问题

    最近使用Eclipse helios版本结合tomcat7.0建立动态的web项目时,发现在WEB-INF下的web.xml没有了. 解决方案: 建立web项目时,建到第三个下一步时,将 Genera ...

  4. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 解析JSON

    视频地址:https://www.cctalk.com/v/15114923886141 JSON 数据 我颠倒了整个世界,只为摆正你的倒影. 前面的文章中,我们已经完成了项目中常见的问题,比如 路由 ...

  5. JAVA 打印流与转换流

    转换流主要有两个 InputStreamReader 和 OutputStreamWriter 1. InputStreamReader 主要是将字节流输入流转换成字符输入流 2. OutputStr ...

  6. ubuntu 16.04 完整安装 phantomjs

    摘自 stackoverflow sudo apt-get install nodejssudo apt-get install nodejs-legacysudo apt-get install n ...

  7. 通过Roslyn构建自己的C#脚本(更新版)(转)

      http://www.cnblogs.com/TianFang/p/6939723.html   之前写过文章介绍过如何通过Roslyn构建自己的C#脚本,但那篇文章是参考自Roslyn CTP版 ...

  8. ID3、C4.5和cart算法比较(转)

    转自:https://www.zhihu.com/question/27205203

  9. mysql mapper中增删查改

    //1.增 public int insert(Port port) ; //2.删 public int deleteM(String id);//3.改 public int update(Por ...

  10. IIS7配置下载apk以及目录浏览

    IIS7为了增加安全性,如果需要禁止目录浏览.只需要按下面的步骤执行就可以 1.选择站点:2.选择功能视图:3.选择IIS下面的目录浏览:4.在右上角的操作中选择“打开功能”:5.选择右边的禁用. 今 ...