【问题标题】:Is there an 'or' notation in qmakeqmake 中是否有“或”符号
【发布时间】:2015-03-23 17:52:36
【问题描述】:

我正在使用 win32macxunix:!macx aka。我的.pro 文件中的 Linux if 语句,用于指定操作系统特定的任务,例如

win32 {
    TARGET = myapp
    RC_FILE = myapp.rc
}
macx {
    TARGET = MyApp
    ICON = myapp.icns
    QMAKE_INFO_PLIST = Info.plist
}
unix:!macx { # linux
    CONFIG(debug, debug|release) {
        TARGET = myapp-debug
    }
    CONFIG(release, debug|release) {
        TARGET = myapp
    }
}

这适用于if X elseif X elseif X elseif not X,其中X 是操作系统说明符。

有没有办法告诉 qmake 它必须为os1os2 编译一个块?

【问题讨论】:

    标签: qt5 qmake


    【解决方案1】:

    您可以将| 运算符用于逻辑or。例如:

    win32|macx {
        HEADERS += debugging.h
    }
    

    http://doc.qt.io/qt-4.8/qmake-advanced-usage.html

    【讨论】:

    • 太好了,谢谢。事实证明,| 的绑定比 : 运算符强。这可以使用未记录的和运算符& 来解决。例如。 unix | macx&CONFIG(release, debug|release) { 在 Linux 调试上运行,而 unix | macx:CONFIG(release, debug|release) { 没有。
    • 忘记我的最后评论。没有运营商&。该行的一部分没有被解析,因为unixtrue
    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 2015-01-15
    • 2014-07-29
    相关资源
    最近更新 更多