如何防止 qmake 在链接器命令行上添加控制台子系统?
Posted
技术标签:
【中文标题】如何防止 qmake 在链接器命令行上添加控制台子系统?【英文标题】:How to prevent qmake from adding the console subsystem on the linker command line? 【发布时间】:2013-09-06 21:24:00 【问题描述】:qmake 将/SUBSYSTEM:CONSOLE
和/SUBSYSTEM:WINDOWS
都放在链接器命令行上。尽管项目文件中存在CONFIG += windows
和CONFIG -= console
,但还是会出现这种情况。这是 Qt 5.1.1,app
模板,否则默认设置。 mkscpec 是 win32-msvc2012。我正在使用widgets
和testlib
子系统。
如何摆脱CONSOLE
子系统?
【问题讨论】:
其实这里的问题比anwser对我有用... 【参考方案1】:在 Qt 5 中使用testlib
模块通过MODULE_CONFIG
机制添加了console
选项。无论您指定什么全局选项,这都会将/SUBSYSTEM: CONSOLE
强制到链接器命令行,即使您使用CONFIG -= console
。
console
配置在 qtbase/src/testlib/testlib.pro
内的 testlib 模块配置中给出。这意味着它ends up in QT.testlib.CONFIG
variable。
如果您想在不强制控制台子系统的情况下使用 testlib
,它很容易移除。在您的项目文件中,添加
QT.testlib.CONFIG -= console
【讨论】:
以上是关于如何防止 qmake 在链接器命令行上添加控制台子系统?的主要内容,如果未能解决你的问题,请参考以下文章