qmake将/SUBSYSTEM:CONSOLE
和/SUBSYSTEM:WINDOWS
放在链接器命令行上。尽管项目文件中存在CONFIG += windows
和CONFIG -= console
,但这仍然存在。这是使用Qt 5.1.1,app
模板,否则默认设置。 mkscpec是win32-msvc2012。我正在使用widgets
和testlib
子系统。
如何摆脱CONSOLE
子系统?
答案 0 :(得分:4)
在Qt 5中,使用testlib
模块通过console
机制添加MODULE_CONFIG
选项。无论您指定哪个全局选项,这都会强制/SUBSYSTEM: CONSOLE
到链接器命令行,即使您使用CONFIG -= console
。
console
配置在qtbase/src/testlib/testlib.pro
内的testlib模块配置中给出。这意味着它ends up in QT.testlib.CONFIG
variable。
如果要在不强制控制台子系统的情况下使用testlib
,则可以轻松删除它。在项目文件中,添加
QT.testlib.CONFIG -= console