qt_import_qml_plugins

此命令自Qt 6.0版开始引入。

概要

qt_import_qml_plugins(target)

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

描述

注意:此命令仅在Qt构建为静态库时才有效。如果使用非静态Qt调用,则将不执行任何操作并立即返回。

qt_import_qml_plugins()在调用时立即运行qmlimportscanner,作为调用的一部分(除非在定义QML模块时将NO_IMPORT_SCAN选项传递给qt_add_qml_module())。它会查找由target使用的静态QML插件,并将其链接到这些插件,以便它们成为target表示的可执行文件或共享库的一部分。搜索遵循QML模块导入的递归。

由于对qmlimportscanner的调用是在配置时间而不是生成或构建时间运行的,因此qt_import_qml_plugins()只了解qt_import_qml_plugins()调用时在target(或它链接或导入的其他目标)上记录的信息。在此调用之后添加的任何链接或导入关系都不会被考虑。因此,应在target的目录作用域中尽可能晚地调用此命令,以便知道所有链接和导入关系。

如果使用qt_add_executable()创建target,则通常不需要直接调用qt_import_qml_plugins()。当Qt以静态方式构建时,如果target链接到Qml库,该命令会作为目标最终化的一部分自动调用。默认情况下,此最终化发生在创建target时相同的目录作用域的末尾。如果使用标准的CMake add_executable()命令创建target,则项目需要自己调用qt_import_qml_plugins()

另请参阅:Q_IMPORT_QML_PLUGIN

© 2024 Qt公司有限公司。本文档贡献的内容归其各自所有者版权所有。此处提供的文档是根据自由软件基金会的GNU自由文档许可证版本1.3的条款授权的。Qt和相应的标志是芬兰Qt公司及其在世界各国/地区的商标。所有其他商标均为其各自所有者的财产。