一、使应用程序可调试
应用程序的发布版本不包含任何调试符号或其他调试信息。在开发过程中,生成具有相关信息的应用程序调试版本很有用。这可以通过将调试添加到项目文件中的 CONFIG 变量来轻松实现:
CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
在调试环境中运行应用程序时,将获得有关应用程序的有用信息。
二、添加特定于平台的源文件
现在有两个新文件要包含到项目文件中:hellowin.cpp 和 hellounix.cpp,分别用于Windows系统和Unix系统。不能只将这些添加到 SOURCES 变量中,因为这会将两个文件都放在 Makefile 中。因此,在这里需要做的是使用一个作用域。
为 Windows 添加平台相关文件的作用域如下所示:
win32 {
SOURCES += hellowin.cpp
}
在为 Windows 构建时,qmake 将 hellowin.cpp 添加到源文件列表中。 在为任何其他平台构建时,qmake 会忽略它。Unix 的文件创建作用域类似:
CONFIG += debug
HEADERS += hello.h
SOURCES += hello.cpp
SOURCES += main.cpp
win32 {
SOURCES += hellowin.cpp
}
unix {
SOURCES += hellounix.cpp
}
三、如果文件不存在则停止 qmake
如果某个文件不存在,可能不想创建 Makefile。
- 可以使用 exists() 函数检查文件是否存在。
- 可以使用 error() 函数阻止 qmake 处理。
对名为 main.pp 的文件的检查如下所示:
!exists( main.cpp ) {
error( "main.cpp文件不存在" )
}
四、嵌套作用域
使用作用域嵌套可以限制条件,如:
win32 {
debug {
CONFIG += console
}
}