qmake 语言保留字问题(我认为)



为了提供一点上下文,我正在用静态插件(http://doc.qt.io/qt-5/plugins-howto.html#static-plugins)打包可执行文件。

在Windows中,我做到了:

LIBS           = -L../../plugins -lrawplugin
LIBS           = -L../../plugins -lbasictools
if(!debug_and_release|build_pass):CONFIG(debug, debug|release)
   win32:LIBS = $$member(LIBS, 0) $$member(LIBS, 1)d

if 语句负责仅在调试模式下将字母 d 添加到库名称中,例如,文件名librawplugind.a

在 Mac OS 上,库被命名为 即 libbasictools_debug.a,所以我想我会在if语句中用debug替换d

if(!debug_and_release|build_pass):CONFIG(debug, debug|release)
   win32:LIBS = $$member(LIBS, 0) $$member(LIBS, 1)debug

但它没有奏效。我猜是因为debug是qmake语言中的保留词。

如何克服这个问题?

我认为这类似于qDebug() << """;的打印"问题,其中"必须在前面加上

qmake语法不知道"if"。只需使用:

!debug_and_release|build_pass:CONFIG(debug, debug|release) {
   win32:LIBS = $$member(LIBS, 0) $$member(LIBS, 1)d
}

相关内容

  • 没有找到相关文章

最新更新