qmake常用语法三
关键字:常用变量
一、TEMPLATE变量:
生成Makefile采用的模板。以下是可供选择的模板:
app:建立一个应用程序Makefile,这个也是默认值,没有指定模板是默认是这个。
lib:建立一个库的Makefile。
vcapp:建立一个应用程序的visual studio项目文件。
vclib:建立一个库的visual studio项目文件。
subdirs:创建一个能够进入子目录并且为之生成为它调用make的Makefile。需要在后面用SUBDIRS=XX来指定那些子目录。
1、app模板:
app模板告诉qmake为建立一个应用程序生成一个Makefile。当使用这个模板时,下面这些qmake系统变量是被承认的。你应该在你的.pro文件中使用它们来为你的应用程序指定特定信息。
HEADERS:需要包含的头文件的列表。
SOURCES:需要的源文件的列表。
FORMS:需要的.ui文件的列表。
LEXSOURCES:所有lex源文件的列表。
YACCSOURCES:所有yacc源文件的列表。
TARGET:可执行应用程序的名称。默认值为项目文件的名字。
DESTDIR:放置可执行程序目标的目录。
OBJECTS_DIR:放置obj中间文件的目录。
MOC_DIR: moc转换文件路径。
RCC_DIR: 资源文件路径。
UI_DIR:ui文件转换的路径。
RESOURCES:需要包含的资源文件。
LIBS:依赖库的路径和名称 -L{xxdirxx} -l{xxnamexx}。
LIBEXT: 产生lib的后缀。
DEFINES:应用程序所需的额外的宏定义列表。
INCLUDEPATH:应用程序所需的额外的包含路径列表。
DEPENDPATH:应用程序所依赖的搜索路径。
VPATH:寻找补充文件的搜索路径。
DEF_FILE:只有Windows需要:应用程序所要连接的.def文件。
RC_FILE:只有Windows需要:应用程序的资源文件。
RES_FILE:只有Windows需要:应用程序所要连接的资源文件。
TRANSLATIONS: 多国语言支持文件。
INSTALLS: 要安装的文件。
target.path: 安装的路径。
详细请参考Qt帮助条目:qmake Variable Reference。
2、lib模板:
lib模板告诉qmake为建立一个库而生成makefile。当使用这个模板时,除了“app”模板中提到系统变量,还有一个VERSION是被支持的。你需要在为库指定特定信息的.pro文件中使用它们。
VERSION:目标库的版本号,例如:1.2.3。
3、subdirs模板:
subdirs模板告诉qmake生成一个makefile,它可以进入到特定子目录并为这个目录中的项目文件生成makefile并且为它调用make。这个模板只有一个系统变量SUBDIRS可以被识别。
SUBDIRS:这个变量中包含了所要处理的含有项目文件的子目录的列表。这个项目文件的名称是和子目录同名的,这样qmake就可以发现它。例如,如果子目里是“subapp”,那么在这个目录中的项目文件应该被叫做subapp.pro。
二、CONFIG变量:
配置变量,指定了编译器所要使用的选项和所需要链接的库。
1、控制编译器标志的选项:
release:应用程序将以release模式连编,如果“debug”被指定,它将被忽略。
debug:应用程序将以debug模式连编。
warn_on:编译器会输出尽可能多的警告信息,如果“warn_off”被指定,它将被忽略。
warn_off:编译器会输出尽可能少的警告信息。
2、控制需要连接的库的选项:
qt:应用程序是一个Qt应用程序,并且Qt库将会被链接。
thread:应用程序是一个多线程程序。
x11:应用程序是一个x11应用程序或者库。
windows:只用于app模板,应用程序是一个windows下的窗口应用程序。
console:只用于app模板,应用程序是一个windows下的控制台应用程序。
dll:只用于lib模板,库是一个共享库。
staticlib:只用于lib模板,库是一个静态库。
plugin:只用于lib模板,库是一个插件,这将会使dll选项生效。
例如:CONFIG += qt debug,使用qt库的应用程序,debug版本。
3、注意事项:必须使用“+=”,不要使用“=”,否则原来的设置会被清除。
三、变量用法:
1、自定义变量:
MY_VARIABLE = value
定义了一个变量MY_VARIABLE,并将值设置为value。
2、变量值的传递:
可以通过在其它任何一个变量的变量名前加$$来把这个变量的值分配给当前的变量。例如:
MY_DEFINES = $$DEFINES
现在MY_DEFINES变量包含了项目文件在这点时DEFINES变量的值。这也和下面的语句一样:
MY_DEFINES = $${DEFINES}
转载于:https://www.cnblogs.com/yuohoo/archive/2013/03/11/2954631.html
qmake常用语法三相关推荐
- Linux Shell常用技巧(三) sed
Linux Shell常用技巧(三) sed 八.流编辑器sed 8.1 sed简介 sed是stream editor的缩写,一种流编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区 ...
- Markdown通用的常用语法说明
前言 Markdown 是一种轻量级的 标记语言,语法简洁明了.学习容易,还具有其他很多优点,目前被越来越多的人用来写作使用. Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表 ...
- 每天学一点儿shell:Shell的常用语法规则
文章目录 Shell 参数传递 Shell 数组 Shell 基本运算符 算数运算符 关系运算符 布尔运算符 逻辑运算符 字符串运算符(重点) 文件测试运算符 Shell 常用语法 Shell 函数 ...
- 【shell】常用语法 -b file -c file -f file-d file -x file
[shell]常用语法 -b file -c file -f file-d file -x file 一.test条件判断 1,test文件测试: -b file 若文件存在且 ...
- 10_InfluxDB常用函数(三)变换类函数(DERIVATIVE, DIFFERENCE,ELAPSED,MOVING_AVERAGE,NON_NEGATIVE_DERIVATIVE)等
10.InfluxDB学习之InfluxDB常用函数(三)变换类函数 转自:https://www.yisu.com/zixun/36847.html 10.1.DERIVATIVE()函数 作用:返 ...
- python选择某一行_Python常用语法有哪些 如何快速入门Python开发
Python常用语法有哪些?如何快速入门Python开发?Python编程语言是最容易学习.并且功能强大的语言,吸引了很多人学习入行.很多人想知道如何快速入门Python开发,接下来就给大家分享Pyt ...
- axios-引入-常用语法-源码
axios 1 axios的引入 1.1. axios是什么? 前端最流行的ajax请求库 react/vue官方都推荐使用axios发ajax请求 文档: https://github.com/ax ...
- md文件编写常用语法类型
一:建立一个.md文件,例如readme.md 开始编写,整理后常用语法如下 ***评价规则确认0911----确定版!***1. 根据后台配置,控制买家是否可以主动评价,以及关闭窗口时是否需要弹窗强 ...
- 使用Visual Studio Code编写markdown文件以及转成PDF格式和markdown常用语法
Markdown是一种轻量级标记语言,排版语法简洁,让人们更多地关注内容本身而非排版.它使用易读易写的纯文本格式编写文档,可与HTML混编,可导出 HTML.PDF 以及本身的 .md 格式的文件.因 ...
最新文章
- 超易懂的MapReduce思想讲解
- SQL Server数据库镜像部署 错误1418’处理及证书验证
- python编程怎么建立工程_教你如何用Python脚本快速创建项目
- R 中的哪些命令或者包让你相见恨晚?--转载知乎
- 拉普拉斯矩阵(Laplace Matrix)与瑞利熵(Rayleigh quotient)
- boost::basic_thread_pool相关的测试程序
- 微服务框架Demo.MicroServer运行手册
- Visual Stutio中win32控制台应用程序、win32项目、MFC项目的区别:
- 使用Python实现简易的数据标注工具
- Java Short类hashCode()方法及示例
- VSCode内npm run build编译打包时候报错:code ELIFECYCLE - (已解决)
- python去重复记录_python如何处理重复值数据?
- RAID10和RAID01的区别
- java批处理框架 pdf_史上最轻松入门之Spring Batch - 轻量级批处理框架实践
- 计算机模拟数学建模,计算机模拟数学建模
- vue随笔一之自执行函数
- ZK实现SASL认证+Kafka连接ZK
- ROS2教程(入门级):记录和回播数据
- TI OMAP平台BSP学习笔记之 - LCD 驱动(3)
- 从0到1,反距离加权IDW(Inverse Distance Weighted Interpolation) 插值变形算法