Qt的.pro文件格式解析
Qt的.pro文件格式解析
在Qt中用qmake生成makefile文件,它是由.pro文件生成而来的,.pro文件的具体格式语法如下:
1.注释
.pro文件中注释采用#号,从“#”号开始,到该行的结束,例如:
2.模板TEMPLATE
模板变量告诉qmake为这个应用程序生成那种makefile文件。下面是可提供使用的选择:
TEMPLATE=app
- app-建立一个应用程序的makefile。这是个默认值,所以如果模板没有被指定,该模板将会被使用。
- lib -建立一个库的makefile。
- vcapp -建立一个应用程序的Visual Studio项目文件。
- vclib -建立一个库的VisualStudio项目文件。
- subdirs -这是一个特殊的模板,它可以创建一个能够进入特定目录并且为一个项目文件生成makefile,并且为它调用make的makefile。
3.添加文件路径
HEADERS +=
用来添加头文件SOURCES +=
用来添加源文件FORMS +=
用来添加 ui 文件RESOURCES +=
用来添加资源文件INCLUDEPATH +=
用来存放添加头文件的路径DEPENDPATH +=
用来添加依赖相关路径LIBS +=
用来添加库文件
注意:
INCLUDEPATH一般用在添加第三方 .dll 的时候所需的头文件路径;
HEADERS用来添加当前项目的路径;
LIBS += -LC:/Windows/System32/ -luser32
格式为:-L 路径 -l 库名
库比较多的时候可以用 \来达到换行目的
引用相对路径的库文件的时候,$$PWD 指的是项目 .pro 文件所在的路径,`$$OUT_PWD` 指的是编译的目标所在的路径。如果不清楚路径,可以使用 message($$PWD) 打印路径查看绝对路径。
DESTDIR +=
指定生成的应用程序的存放目录。TARGET =
指定生成的应用程序的名字。UI_DIR +=
用来存放编译的时候 ui 生成的 ui_*.h 文件。RCC_DIR +=
存放 .qrc 生成的 qrc_*.h 文件。MOC_DIR +=
用来存放 moc 命令转换添加的Q_OBJECT
的 .h 文件为标准 .h 文件的存放路径。OBJECTS_DIR +=
用来存放目标文件 .obj 存放的路径。
注:
UI_DIR
、RCC_DIR
、 MOC_DIR
、OBJECTS_DIR
可以认为都是用来存放中间文件,只是存放的中间文件有所不同,不指定的话默认会存放在 .pro 文件所在的路径,显得工程看起来比较乱
4.添加配置信息
CONFIG +=
用来指的应用程序的配置信息。
参数 | 说明 |
---|---|
release | 项目被联编为一个发布的应用程序 |
debug | 项目被联编为一个debug的应用程序,debug 和 release 同时设置的时候,最后面的一个生效 |
debug_and_release | 项目被联编为 debug 和 release |
warn_on | 编译器输出尽可能多的警告信息 |
c++11 | 支持 c++11 的标准 |
thread | 支持线程,当 CONFIG 参数包含 qt 的时候,这个是默认支持的 |
5.实例
TEMPLATE = app
LANGUAGE = C++
QT += widgets xml sql network opengl
CONFIG += qt warn_on release
HEADERS += *.h
SOURCES += *.cpp
FORMS += *.ui
RESOURCES += \
DiffusionFilter.qrc
Qt的.pro文件格式解析的更多相关文章
- QT中PRO文件解析(转)
From csdn blog: QT中PRO文件写法的详细介绍,很有用,很重要! 在QT中,有一个工具qmake可以生成一个makefile文件,它是由.pro文件生成而来的,.pro文件的写法如下: ...
- Qt之pro文件解析
在我们创建Qt工程项目时,Qt Creator总会创建一个.pro文件,我们称.pro文件为Qt的工程管理文件.一个工程项目可以包含一个或多个.pro文件.理解和掌握pro文件的用法,将有利于Qt开发 ...
- C++PE文件格式解析类(轻松制作自己的PE文件解析器)
PE是Portable Executable File Format(可移植的运行体)简写,它是眼下Windows平台上的主流可运行文件格式. PE文件里包括的内容非常多,详细我就不在这解释了,有兴趣 ...
- ArcGIS三大文件格式解析
原文:ArcGIS三大文件格式解析 Shape数据 Shapefile是ArcView GIS 3.x的原生数据格式,属于简单要素类,用点.线.多边形存储要素的形状,却不能存储拓扑关系,具有简单.快速 ...
- Android init.rc文件格式解析
/***************************************************************************** * Android init.rc文件格式 ...
- QT中.pro文件的写法
QT中.pro文件的写法 qmake 变量 含义 #xxxx 注释, 从“#”开始,到这一行结束 SOURCES 指定源文件 SOURCES = *.cpp 对于多源文件,可用空格分开 SOURC ...
- Qt中 .pro 文件和 .pri 文件简介
*.pro 这是一个典型的Qt示例程序的.pro文件(propriprfprl.pro): TEMPLATE = app CONFIG += QT QT += core gui TARGET = pr ...
- QT中PRO文件写法的详细介绍
学习Qt时,发现有些知识看了不经常用就忘了,以下是书本上写的一些关于qmake的相关知识,自己看后,打算把一些经常用到的记下来,整理整理. Qt程序一般使用Qt提供的qmake工具来编译. qmake ...
- 如何将QT的pro图标修改的更显著一些
如何将QT的pro图标修改的更显著一些 QT的项目打开文件是pro,默认是这样的 这个白色的背景在很多文件中很不好找 所以使用工具进行相关修改. 寻找到.pro 双击修改ico 默认的这个就非常不错. ...
随机推荐
- oracle 11g rac修改监听端口(远程监听和本地监听)
转至:https://www.cnblogs.com/yj411511/p/12459533.html 目录 1.修改远程监听端口 1.1 查看远程监听状态 1.2 修改SCAN listener端口 ...
- Applied Social Network Analysis in Python 相关笔记
- web自动化之selenium(四)元素等待
隐式等待 说明 隐式等待是通过设置一定时长的等待,让页面上的某些元素能过加载出来,如果超过了设置的时间还没有加载出来则抛出(NoSuchelementException异常),默认单位为"秒 ...
- CF877F题解
题目大意 有一个序列,每个位置上有 \(1\) 或 \(2\) 两种元素若干,每次询问一个区间,求这个区间有多少个子区间满足 \(1\) 类元素恰好比 \(2\) 类元素多 \(k\) 个. 莫队 要 ...
- ArcMap操作随记(11)
1.直方图 在[Spatial Analyst]工具条中 2.分辨率变换 [重采样] :①最近邻法 ②双线性 ③三次卷积 重采样过程中要注意Nodata值 3.用ArcGIS进行监督分类 [影像分类] ...
- AQS 源码解读之加锁篇
以 ReentrantLock 创建的非公平锁为基础,进行 AQS 全流程的分析. 分析 demo 一共有 A.B.C 三个线程. public class AQSDemo { // 带入一个银行办理 ...
- 远程控制Windows2003下安装Pcanywhere导致Awgina.dll出错的解决办法
远程控制的时候出现的问题引用 症状启动计算机时,"欢迎使用 Windows"登录屏幕不出现.您还可能会看到与下面的某条信息类似的错误信息: ? 一个最近安装的程序使欢迎屏幕和快速用 ...
- ZYNQ 启动问题 :FSBL
0.ZYNQ外部启动条件 1. 电源要求: 在阶段0 BootROM时,安全模式下PS与PL都是必须上电的:非安全模式PS需要上电,如图: 在阶段1 FSBL时,PS与PL都是必须上电的,因为PL将在 ...
- docker基础命令,常用操作
docker基础命令 使用docker镜像 获取镜像 从docker registry获取镜像的命令是docker pull.命令格式是: docker pull [选项][docker regist ...
- [SPDK/NVMe存储技术分析]006 - 内存屏障(MB)
在多核(SMP)多线程的情况下,如果不知道CPU乱序执行的话,将会是一场噩梦,因为无论怎么进行代码Review也不可能发现跟内存屏障(MB)相关的Bug.内存屏障分为两类: 跟编译有关的内存屏障: 告 ...