赞
踩
QT:这个是添加QT需要的模块
TEMPLATE:定义了工程的编译模式
赋值方式为:TEMPLATE=app
(1) app :建立一个应用程序的makefile,这是默认值,即如果template没有被指定,这个将被使用
(2) lib :建立一个库的makefile
(3) vcapp : 建立一个应用程序的Visual Studio项目文件
(4) vclib :建立一个库的Visual Studio项目文件
(5) subdirs :创建一个能够进入特定目录并且为一个项目文件生成makefile并且为它调用make的makefile
TARGET:指定生成的应用程序名
赋值方式为:TARGET = pksystem
DESTDIR:指定生成的应用程序放置的目录
赋值方式为:DESTDIR = destdir,其中,destdir为生成的应用程序放置的目录
DEPENDPATH:程序编译时依赖的相关路径
赋值方式为:DEPENDPATH += . forms include qrc sources
INCLUDEPATH:指定工程要用到的头文件路径,一般包括用户自定义的头文件路径或没有放入系统头文件路径的头文件路径
赋值方式为:INCLUDEPATH += . systeminclude,其中.表示当前目录,systeminclude为系统头文件路径
SOURCES:工程需要的源文件
如:SOURCES += main.cpp mainwindow.cpp
HEADERS:工程所需要的头文件,一般包括用户自定义的头文件或未放入系统头文件路径的头文件
如:HEADERS += mainwindow.h
FORMS:工程要用到的ui文件(ui文件时用Qt designer生成的)
如:FORMS += mainwindow.ui
LIBS:加载库文件
赋值方式为:LIBS+= -L/usr/local/lib -lm
或者 LIBS += /usr/local/libm.so
UI_DIR:UIC将ui转化为头文件所存放的目录
RCC_DIR:RCC将qrc文件转化为头文件所存放的目录
MOC_DIR:MOC命令将含Q_OBJECT的头文件转换为标准的头文件存放的目录
OBJECTS_DIR:生成的目标文件存放的目录
DEFINES:定义编译选项,在编写程序时可以使用#ifndef xx_xxx_ …
RC_FILE :程序中所用到的图片等资源文件
RESOURCES:加载要用到的资源*.qrc文件
如:RESOURCES += image.qrc
CODECFORSRC:源文件编码方式
如:CODECFORSRC = GBK
TRASHLATIONS:加载要用到的语言翻译*.ts文件
CONFIG:告诉qmake应用程序的配置信息
(1)可以用来指定是生成debug模式还是release模式,也可以都生成
CONFIG += debug_and_release
CONFIG(debug,debug|release)
{
TARGET= hello
DESTDIR= ./debug
}
else
{
TARGET= hello
DESTDIR= ./release
}
(2)可以用来打开编译器警告(warn_on输出尽可能多的警告信息)或者关闭(warn_off -编译器会输出尽可能少的警告信息)
(3)可以用来配置要Qt加载库,例如如果要用到Qt的多线程,则:CONFIG+=qt thread
(4)要运行console:CONFIG +=console
平台信息:win32和unix
QT是跨平台的,所以我们在不同的平台上用同一个pro文件,这要加入有关平台的信息。windows平台是win32,Linux平台是unix。
例如在Windows和Linux的动态库文件格式是不一样的,一个是lib文件一个是so文件:
win32:LIBS+= ./mitab/mitab_i.lib
unix:LiBS+= ./mitab/libmitab.so
再如:
win32{SOURCES+= hello_win.cpp //win平台}
unix{SOURCES+= hello_linux.cpp //unix/linux平台}
变量解析符号$$
可以通过在其它任何一个变量的变量名前加$$来把这个变量的值分配给当前的变量
如:MY_DEFINES= $$DEFINE ,将DEFINE的值分配给MY_DEFINES
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。