Windows 下的 Qt pro 文件中省略模块

Omitting module in Qt pro file under Windows

Qt pro文件开头如下:

QT += core gui
QT += serialport
QT += displaysettings

这是为我的 Hummingboard 运行 Debian Linux 构建的。但是,显示设置不适用于 Windows builds.I 希望从 windows 构建中排除此模块。我可以从编译中排除代码中的函数调用。但是这里添加displaysettings会报错

使用:

QT += core gui
QT += serialport
!win32 {
    QT += displaysettings
}

有关详细信息,请阅读 https://doc.qt.io/qt-5/qmake-language.html#scopes-and-conditions

我接受的答案很好。从那时起,我了解到显示设置非常依赖硬件。它在我的 ARM 处理器 运行 Armbian 上可用,但在 Linux 运行 Intel 和 AMD 处理器上不可用。我想要一个无论 OS/processor 组合如何都有效的解决方案。感谢 Qt 技术支持,我像这样使用 qtHaveModule:

qtHaveModule(displaysettings) {
QT += displaysettings
}

而且效果很好。更多信息@https://doc.qt.io/qt-5/qmake-test-function-reference.html#qthavemodule-name

谢谢 eyllanesc 的回答。