当前位置: 首页 > 网络知识

Qt .pro文件详解

时间:2026-01-29 09:26:55

一、.pro文件内容解释

.pro文件是qmake用来生成makefile文件的中间文件。
新建简单Qt工程,默认生成 .pro文件内容如下,解释见注释:

1 # [QT+= ]语法,定义该工程包含的Qt模块 2 QT += core gui 3 # 由于Qt5将widgets模块从gui模块独立出来了,所以定义Qt主版本大于4就要包含widgets模块 4 greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 5 6 # 编译宏,使用c++17编译 7 CONFIG += c++17 8 # 也可以 CONFIG = 9 # CONFIG = debug 不编译debug类型 10 11 # You can make your code fail to cpile if it uses deprecated APIs. 12 # In order to do so, uncment the following line. 13 # DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 14 15 # 需要编译的源文件路径(项目根目录的相对路径) 16 SOURCES += \ 17 mainpp \ 18 widgetpp 19 20 # 需要编译的头文件路径(项目根目录的相对路径) 21 HEADERS += \ 22 widget.h 23 24 # 需要编译的ui文件路径(项目根目录的相对路径) 25 FORMS += \ 26 widget.ui 27 28 # 只知道是设置目标可以执行文件路径的,具体语法看不懂,如果你知道欢迎评论区留言 29 # Default rules for deployment. 30 qnx: target.path = /tmp/$$/bin 31 else: unix:!android: target.path = /opt/$$/bin 32 !isEmpty(target.path): INSTALLS += target

除工程默认的一些字段,.pro文件还有一些其他字段:

1 # 目标可执行文件的名称,不指定默认为工程名 2 TARGET = exe_name 3 4 # 目标可执行文件的存放目录,不指定默认为realse目录 5 # 几个指定目录的符号: 6 # 宏 $$PWD 代表当前目录和 ./ 等效 7 # ../ 代表上一级目录 8 DESTDIR = exe_dir 9 10 # 编译宏开关,根据不同宏作不同的编译 11 DEFINES += defines 12 13 # obj文件目录,即 .o 文件 14 OBJECTS_DIR = obj_dir 15 16 # 资源文件路径,包括图片、音频等(项目根目录的相对路径) 17 RESOURCES += res.rc 18 19 # 链接库路径(项目根目录的相对路径) 20 DEPENDPATH += depend_dir 21 22 # 链接库文件(项目根目录的相对路径) 23 LIBS += Llib_name 24 # 也可以直接写带路径的链接库文件 25 LIBS += Llib_dir_name 26 27 # 引用库头文件路径(项目根目录的相对路径) 28 INCLUDES += include_dir 29 30 # 项目使用的模板类型 31 TEMPLATE = app 32 TEMPLATE = lib

二、qmake生成makefile过程

to be continue…



上一篇:Qt 大端模式、小端模式及其转换
下一篇:Qt QObject::killTimer: timers cannot be stopped from another thread
Qt
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素