qmake的很多行为是受一些变量的控制,有些变量是各个平台通用的,例如声明头文件、源文件、UI文件的变量。而有的变量只在特定平台之下起作用。有的变量定义特定编译器、链接器的行为。
CONFIG:配制。可选项
//编译选项
release、debug、debug_and_release:编译发布版、调试版和两种都编译。
debug_and_release_target:缺省设置,编译完成后放入不同的目录。
build_all:同时编译两种。
autogen_precompile_source:自动为pro中指定的预编译头文件生成cpp文件。
ordered :当使用了subdirs模板时,该变量指示目录列表应该按照给出的顺序解析。
precompile_header:启用预编译,使用PRECOMPILED_HEADER变量指定预编译头文件。
warn_on、warn_off:生成尽可能多、尽可能少的警告。两个都指定,则后制定的起作用。
exceptions、exceptions_off:是否支持异常。默认支持
rtti、rtti_off、stl、stl_off:是否支持运行时信息、stl库。
thread:支持线程,如果CONFIG中有qt,则默认支持。
c++11:缺省未设置。还受到编译器的影响。
create_prl、link_prl:静态链接时,不检查库下一步依赖,使用这些选项启用检查。前者用于创建静态库,后者用于使用。
//定义应用程序或库
qt:缺省设置,链接qt的一些库。
x11:链接xwindow相关的库。
testcase:
insignificant_test:
windows、console:win32或者console应用,链接相关的库。
shared、dll:目标是共享object、或库,添加适当的后缀。
static、staticlib:目标是静态库。lib only.
plugin、designer:插件、qt designer插件
no_lflags_merge:LIBS指定的库不进行合并。
//windows专用特征
flat:生成的vc工程文件,如果设置该变量则放在同级目录下,否则根据qt目录分类。默认设置,即同一目录下。