qmake:添加调试、添加平台作用域、检测文件是否存在、嵌套作用域

本文介绍了如何使Qt应用程序可调试,通过在项目文件中添加DEBUG配置,并展示了如何根据平台(Windows和Unix)添加特定源文件。同时,讲解了如何使用qmake的exists()函数检查文件存在性,以及如何通过嵌套作用域设置平台特定的调试选项。
摘要由CSDN通过智能技术生成

一、使应用程序可调试

应用程序的发布版本不包含任何调试符号或其他调试信息。在开发过程中,生成具有相关信息的应用程序调试版本很有用。这可以通过将调试添加到项目文件中的 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
     }
 }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值