如何在Windows环境下的Qt pro文件中排除displaysettings模块
解决方案
你可以通过qmake内置的平台条件判断语法,按需引入displaysettings模块,修改后的.pro文件配置如下:
QT += core gui QT += serialport # 非Windows环境下才引入displaysettings模块 !win32 { QT += displaysettings }
配置说明
!win32是qmake的原生条件判断规则,代表当前构建目标为非Windows平台时,才会执行大括号内的配置逻辑,Windows构建时会自动跳过这部分配置,不会触发模块缺失的编译错误。- 如果你需要更精准的范围控制,只在Linux平台引入该模块,可以把条件改为
linux,避免在macOS等其他非Windows平台误引入依赖:
# 仅Linux环境下引入displaysettings模块 linux { QT += displaysettings }
该配置和你代码层面的功能编译隔离逻辑完全匹配,不会产生额外冲突。
内容的提问来源于stack exchange,提问作者mister270
相关产品推荐
相关产品推荐

