qt_extract_metatypes

从 Qt 目标中提取元类型并生成相应的 metatypes.json 文件。

此命令在 Qt 6.0 中引入。

注意:此命令处于技术预览阶段,在未来的版本中可能会发生变更。

概述

qt_extract_metatypes(target
    [MANUAL_MOC_JSON_FILES json_files...]
    [OUTPUT_FILES variable_name]
)

如果禁用了无版本命令,请使用 qt6_extract_metatypes() 代替。它支持与该命令相同的参数集合。

描述

某些操作依赖于在目标上生成和收集元类型信息。这通常由 Qt 命令内部处理,但在这种情况下不适用时,可以调用 qt_extract_metatypes() 来强制收集特定 target 的信息。

以以下方式为目标源文件生成元类型信息

  • 由 AUTOMOC 自动生成。此 qt_extract_metatypes() 命令会在检测到在 target 上启用了 AUTOMOC 时自动提取所需的信息。
  • 通过带有 --output-json 选项调用 moc 手动生成。项目负责跟踪使用此方法生成的所有 JSON 文件,并使用 MANUAL_MOC_JSON_FILES 选项将它们传递给 qt_extract_metatypes()

qt_extract_metatypes() 生成一个针对特定目标的元类型 JSON 文件,收集来自 AUTOMOC 和手动 moc 输入的所有元类型详细信息。它是通过调用 moc 并带有 --collect-json 选项来做到这一点的。如果您需要了解结果的元类型 JSON 文件的存储位置(例如,将其传递给其它命令或安装),请使用 OUTPUT_FILES 选项提供包含其绝对路径的变量名称。

© 2024 Qt 公司有限公司。本文件中包含的文档贡献的版权为各自的拥有者。本文件提供的文档根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 和相应的标志是芬兰的 Qt 公司以及世界各地的商标。所有其他商标均为各自所有者的财产。