• 做一个幸福的人,读书,旅行,努力工作,关心身体和心情。
  • 不管有没有人爱,也要努力做一个可爱的人。不埋怨谁,不嘲笑谁,也不羡慕谁,阳光下灿烂,风雨中奔跑,做自己的梦,走自己的路。

Qt中的pro文件

C/C++ lcq 3年前 (2015-07-21) 686次浏览 0个评论

pro文件是Qt工程文件,相比Visual Studio的工程文件,不知道简洁了多少。为了以后能更顺利的使用这个pro文件,写篇博文做个笔记,供自己以后参考。

变量 内容 参数或示例
DESTDIR 目标程序生成路径 DESTDIR = ../exePath,那么他就会在.pro文件的上一次的exePath文件夹里面生成目标文件
FORMS 包括所有的UI文件 FORMS += forms/painter.ui
HEADERS 工程中包含的头文件 HEADERS  += mainwindow.h
SOURCES 工程中包含的源文件 SOURCES += main.cpp
QT 一系列Qt的模块 QT += core gui
RESOURCES 包含Qt的资源文件 RESOURCES += qrc/painter.qrc
UI_DIR 指定uic命令将.ui文件转化成ui_*.h文件的存放的目录 UI_DIR += forms
RCC_DIR 指定rcc命令将.qrc文件转换成qrc_*.h文件的存放目录 RCC_DIR += ../tmp
MOC_DIR 指定moc命令将含Q_OBJECT的头文件转换成标准.h文件的存放目录 MOC_DIR += ../tmp
OBJECTS_DIR 指定目标文件的存放目录,描述了编译/连接应用程序过程中产生的中间文件存放的位置. OBJECTS_DIR +=../tmp
DEPENDPATH 描述建立应用程序所依赖的其他文件所在的路径 DEPENDPATH+=  . forms include qrc sources
INCLUDEPATH 头文件包含路径,这个选项可以指定我们#include语句要包含头文件的目录,如果你有其它的不在当前目录的头文件需要包含进来,并又不想在自己的源文件中使用绝对路径或相对路径来包含头文件,那么我就可以在这里把这个头文件所在的路径包含进来 INCLUDEPATH += ../image
CODECFORSRC 原文件编码方式 ODECFORSRC = GBK
TRASHLATIONS 加载要用到的语言翻译*.ts文件
LIBS 选择我们要包含的库 我们image目录下的libimage.so库,那么可以这么写:LIBS += -L../image/image
CONFIG 项目的设置选项 release:release模式,如果你同时开启了debug模式,那么最后一个起作用debug:debug模式,如果你同时开启了release模式,那么最后一个起作用debug_and_release:The project is prepared to be built in both debug and release modes.debug_and_release_target:This option is set by default. If debug_and_release is also set, the debug and release builds end up in separate debug and release directories.build_all:If debug_and_release is specified, the project is built in both debug and release modes by default.autogen_precompile_source:Automatically generates a .cpp file that includes the precompiled header file specified in the .pro file.ordered:When using the subdirs template, this option specifies that the directories listed should be processed in the order in which they are given.precompile_header:Enables support for the use of precompiled headers in projects.warn_on:警告打开,编译器尽量将所有的警告显示出来warn_off:警告关闭,编译器尽量少显示警告exceptions:异常,默认打开exceptions_off:关闭异常rtti:RTTI support is enabled. By default, the compiler default is used.rtti_off:RTTI support is disabled. By default, the compiler default is used.stl:使用STL,默认打开stl_off:不使用STL(Qt文档居然说默认使用,我靠,不跟上面矛盾么?)thread:Thread support is enabled. This is enabled when CONFIG includes qt, which is the default.c++11:支持C++11,如果编译器不支持C++11,那么设置此项无影响,默认关闭c++14:支持C++14,如果编译器不支持C++14,那么设置此项无影响,默认关闭
TEMPLATE 模板变量告诉qmake为这个应用程序生成哪种makefile app:生成一个应用程序lib:静态库subdirs:Creates a Makefile for building targets in subdirectories. The subdirectories are specified using the SUBDIRS variable.aux:Creates a Makefile for not building anything. Use this if no compiler needs to be invoked to create the target, for instance because your project is written in an interpreted language.Note: This template type is only available for Makefile-based generators. In particular, it will not work with the vcxproj and Xcode generators.vcapp:Windows only. Creates an application project for Visual Studio. See Creating Visual Studio Project Files for more information.vclib:Windows only. Creates a library project for Visual Studio.
TARGET 定义我们生成的目标文件的名字 TARGET = MyDoubanFM

一个实例:

一些需要注意的地方:

1、如果一行有多个,请在每个选项中使用空格隔开,如果要换行,请使用 。

2、尽量用 += 替代 =。

3、 $$[…]运算符,可以使用该运算符引用qmake环境变量值

4、$$PWD,当前工作目录的绝对路径。PWD:Print Working Directory。.pri 文件必须用$$PWD,否则qmake就会提示找不到文件.


参考文章:

1、QT pro自动化编译

2、QT工程中的文件介绍(1)—-*.pro文件  

3、Qt .pro项目工程文件语法和格式

4、QT中PRO文件写法的详细介绍,很有用,很重要!

5、QT中的pro文件的编写

6、在QtCreator帮助里面搜索索引:Creating Project Files。


乐趣公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Qt中的pro文件
喜欢 (1)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址