QT中.pro文件的写法
qmake 变量 |
含义 |
|
#xxxx |
注释, 从“#”开始,到这一行结束 |
|
SOURCES |
指定源文件 |
SOURCES = *.cpp |
对于多源文件,可用空格分开 |
SOURCES = 1.cpp 2.cpp 3.cpp |
|
或者每一个文件可以被列在一个分开的行里面,通过反斜线另起一行 |
SOURCES = hello.cpp \ main.cpp |
|
一个更冗长的方法是单独地列出每一个文件,就像这样 |
SOURCES += hello.cpp SOURCES += main.cpp |
|
HEADERS |
指定头文件 |
HEADERS = hello.h HEADERS += hello.h |
CONFIG |
配置信息 |
CONFIG+= qt warn_on release |
编译器标志: l release - 应用程序将以release模式连编。如果“debug”被指定,它将被忽略。 l debug - 应用程序将以debug模式连编。 l warn_on - 编译器会输出尽可能多的警告信息。如果“warn_off”被指定,它将被忽略。 l warn_off - 编译器会输出尽可能少的警告信息。 连编的库/应用程序的类型: l qt - 应用程序是一个Qt应用程序,并且Qt库将会被连接。 l thread - 应用程序是一个多线程应用程序。 l x11 - 应用程序是一个X11应用程序或库。 l windows - 只用于“app”模板:应用程序是一个Windows下的窗口应用程序。 l console - 只用于“app”模板:应用程序是一个Windows下的控制台应用程序。 l dll - 只用于“lib”模板:库是一个共享库(dll)。 l staticlib - 只用于“lib”模板:库是一个静态库。 l plugin - 只用于“lib”模板:库是一个插件,这将会使dll选项生效。 |
||
TARGET |
指定目标文件名 如果不设置该项目,目标名会被自动设置为跟项目文件一样的名称 |
TARGET = filename |
INTERFACES |
添加界面文件(ui) |
INTERFACES = filename.ui |
TEMPLATE |
模块设置 app(生成应用程序,默认) subdirs(生成makefile文件编译subdirs指定的子文件夹) lib(生成库文件) |
TEMPLATE = app |
DESTDIR |
指定生成的应用程序放置的目录 |
DESTDIR += ../bin |
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 |
头文件包含路径 |
INCLUDEPATH += . |
CODECFORSRC |
源文件编码方式 |
CODECFORSRC = GBK |
FORMS |
工程中包含的.ui设计文件 |
FORMS += forms/painter.ui |
RESOURCES |
工程中包含的资源文件 |
RESOURCES += qrc/painter.qrc |
win32{…} unix{…} |
平台相关性处理 |
win32 { SOURCES += } |
LANGUAGE |
LANGUAGE = C++ |
|
exists !exists |
如果一个文件不存在,停止qmake |
!exists( main.cpp ) { |
QT |
加入库模块 |
QT += xml |
LIBS |
LIBS += -L folderPath //引入的lib文件的路径 -L:引入路径 LIBS += -lLibName //引入lib 文件 -l : 引入库 |
LIBS += -L"$(OutDir)" \ -L"$(SolutionDir)lib" \ -lopengl32 \ -lglu32 \ -lObjectDbAPI \ -lGraphicsLibD |