QT_DEPLOY_QML_DIR
在特定目标平台部署 QML 插件的相对子目录。
此变量由名为 QT_DEPLOY_SUPPORT 的脚本定义。应仅在安装过程中或作为构建后规则的一部分部署时使用。
注意:这是一个低级别部署 API 变量,应仅在使用高级 API 命令未涵盖的高级用例中使用,如 qt_generate_deploy_app_script。
此变量从 Qt 6.3 开始引入。
项目应在其部署脚本中使用 QT_DEPLOY_QML_DIR
以避免硬编码 QML 模块部署的特定目录。
QT_DEPLOY_QML_DIR
默认值为 qml
。要更改 QT_DEPLOY_QML_DIR
的值,在包含 QT_DEPLOY_SUPPORT
之前在项目部署脚本中设置它。
QT_DEPLOY_QML_DIR
路径相对于 QT_DEPLOY_PREFIX。
当将内容部署到 macOS 应用程序包时,此变量没有意义,不应用于此场景。Apple 的 macOS 应用程序包指南要求所有插件都部署到包内容下的 PlugIns
子目录中,所有其他非二进制文件通常应位于 Resources
子目录下。因此,QML 模块的不同部分需要部署到应用程序包内的不同位置。
示例
cmake_minimum_required(VERSION 3.16...3.22) project(MyThings) # The following CMAKE_INSTALL_*DIR variables are used to initialize their # QT_DEPLOY_*_DIR counterparts. set(CMAKE_INSTALL_BINDIR "mybindir") set(CMAKE_INSTALL_LIBDIR "mylibdir") set(CMAKE_INSTALL_LIBEXECDIR "mylibexecdir") find_package(Qt6 REQUIRED COMPONENTS Core) qt_standard_project_setup() qt_add_executable(MyApp main.cpp) set(deploy_script "${CMAKE_CURRENT_BINARY_DIR}/deploy_MyApp.cmake") file(GENERATE OUTPUT ${deploy_script} CONTENT " set(QT_DEPLOY_PLUGINS_DIR \"mypluginsdir\") set(QT_DEPLOY_QML_DIR \"myqmldir\") set(QT_DEPLOY_TRANSLATIONS_DIR \"i18n\") include(\"${QT_DEPLOY_SUPPORT}\") qt_deploy_runtime_dependencies( EXECUTABLE \"\${QT_DEPLOY_BIN_DIR}/$<TARGET_FILE_NAME:MyApp>\" )") install(SCRIPT ${deploy_script})
另请参阅:QT_DEPLOY_SUPPORT,QT_DEPLOY_PREFIX,QT_DEPLOY_BIN_DIR,QT_DEPLOY_LIBEXEC_DIR,QT_DEPLOY_LIB_DIR,QT_DEPLOY_PLUGINS_DIR和QT_DEPLOY_TRANSLATIONS_DIR。
© 2024 Qt 公司版权所有。此处包含的文档贡献是各自所有者的版权。此处提供的文档是根据自由软件基金会发布的GNU 自由文档许可协议第 1.3 版许可的。Qt 及相关标志是芬兰的和/或全球其他地区 Qt 公司的商标。所有其他商标均为其各自所有者的财产。