CMP0020

警告

此策略的 OLD 行为已在 CMake 4.0 版本中移除。此策略必须通过调用 cmake_minimum_required()cmake_policy() 设置为 NEW

在 Windows 上自动将 Qt 可执行文件链接到 qtmain 目标。

CMake 2.8.10 及更低版本要求 Qt 用户始终在 Windows 上手动指定链接到 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 4.0 版本中移除之前,可以通过 cmake_policy()cmake_minimum_required() 进行设置。如果未设置,CMake 会发出警告,并使用 OLD 行为。