TELEPLATE :模板
app:默认不写时为app,即应用程序的makefile。
lib :建立一个库的makefile。
TARGET:生成应用程序名
CONFIG:配置信息
CONGIF += qt warn_on release
分别意思是,告诉qmake这个应用程序是使用QT连编的,这就是说qmake再连接和为编译添加所需要的包含路径的时候会考虑到用qt库。warm_on告诉qmake要把编译器设置为输出警告信息的。release告诉应用程序必须被连编成一个发布版本。开发过程中可设置为也可以为debug版本。
INCLUDEPATH:头文件包含路径
CODECFORSRC = gbk :源文件编码方式
#工程中的源文件和头文件
SOURCES +=
HEADERS +=
RESOURCES += qrc/painter.qrc // 工程中包含的资源文件
FORMS += forms/painter.ui // 工程中包含的ui设计文件
LIBS += -l(库名)
#平台相关
win32 {
SOURCES += hello_win.cpp
}
unix{
LIBS +=-lcur3
}
如果项目工程大文件多:
可以将SOURCES,HEADERS ,FORMS单独拿出来放到单独一个test.pri文件中,然后在pro文件中用 include(test.pr)进行管理。
pro文件中$和$$符号含义和用法:
包含pri文件:
自定义变量 :
BASEDIR = .. /.. /.. /.. /
include ( $$ { BASEDIR } pri / common.pri )
include ( $$ { BASEDIR } pri / baseapk.pri )
INCLUDEPATH += $$ { BASEDIR } include
INCLUDEPATH += $$ { BASEDIR } include / forecastbusiness
自定义变量:
myVersion = 1.2
TARGET = software $$ { myVersion }
FILE = main.cpp
SOURCES += $$ FILE
重新qmake 后正确生成目标程序为software1.2的工程。
Qt在pro或pri文件的语法中只能区分出windows、Unix和Mac三类 *** 作系统,Linux应归属于Unix类 *** 作系统之中,一般使用如下标识符
win32, unix, macx
在这三类 *** 作系统下,尤其是Windows如果要区分出32位与64位的话就需要用到QT_ARCH这个变量了。该变量与你机器上安装的Qt版本有关。
举例如下
win32 {
contains(QT_ARCH, i386) {
message("32-bit")
LIBS += ...... (32位库)
}else {
message("64-bit")
LIBS += ...... (63位库)
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)