CMP0020¶
在 Windows 上自动将 Qt 可执行文件链接到 qtmain
目标。
在 Windows 上,CMake 2.8.10 及更早版本要求 Qt 用户总是手动指定与静态库 qtmain.lib
链接的依赖关系。CMake 2.8.11 在确定 IMPORTED
目标的链接依赖关系时获得了评估生成器表达式的能力。这使得 CMake 本身能够在使用 IMPORTED
Qt 目标时自动将链接到 Qt 的可执行文件链接到 qtmain.lib
库。对于已经链接到 qtmain.lib
的应用程序,这应该几乎没有影响。对于提供自己替代的 WinMain 实现的应用程序和使用 QAxServer 库的应用程序,需要禁用此自动链接,具体请参阅文档。
此策略的 OLD
行为是在链接到 QtCore IMPORTED
目标时,不自动将可执行文件链接到 qtmain.lib
。此策略的 NEW
行为是在链接到 QtCore IMPORTED
目标时,自动将可执行文件链接到 qtmain.lib
。
此策略是在 CMake 版本 2.8.11 中引入的。它可以通过 cmake_policy()
或 cmake_minimum_required()
设置。如果没有设置,CMake 会发出警告并使用 OLD
行为。