如何根据调试/发布设置不同的qmake配置?

18

我需要在我的 .pro 文件中为调试和发布版本指定不同的输出和中间文件夹路径。我创建了一个如下所示的测试 .pro 文件:

release {
  message( "release" )
}
debug {
  message( "debug" )
}

但是在Qt Creator中使用“debug”构建编译此.pro文件会导致以下输出:

Project MESSAGE: release
Project MESSAGE: debug

似乎“debug”和“release”两个条件都被设置为True了 O_O。在qmake中有没有可能分别处理debug和release构建呢?


2个回答

23
根据qmake手册所述:
CONFIG(release, debug|release) {
  message( "release" )
}
CONFIG(debug, debug|release) {
  message( "debug" )
}

虽然我不太理解这个解释。看起来两个选项都被选择了,只有其中一个是“活动的”。但是qmake以反直觉而著称。


7
请查看此问题及其答案以获取解释。 - Bill

8

尝试:

CONFIG(debug, debug|release){
message("debug")
} else {
message("release")
}

如果您在debugdebug|release模式下构建项目,qmake将显示"debug"。否则(即:如果您在release模式下构建它),将显示一个"release"信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接