QT_DEPLOY_LIBEXEC_DIR
针对某些目标平台部署程序可执行文件的相对子目录。
该变量由名为 QT_DEPLOY_SUPPORT 的脚本定义。它应仅作为安装或构建后规则的部署部分使用。
注意:这是一个低级部署 API 变量,应仅在高级使用场景中使用,这些场景未由高级 API 命令覆盖,例如 qt_generate_deploy_app_script。
此变量自 Qt 6.7 以来已引入。
在 Unix 衍生版上,项目应在它们的部署脚本中使用 QT_DEPLOY_LIBEXEC_DIR
以避免在部署本地项目辅助可执行文件时硬编码特定目录。
例如,使用 QtWebEngine 的项目会将 QtWebEngineProcess
可执行文件部署到此目录。
QT_DEPLOY_LIBEXEC_DIR
默认为 ${CMAKE_INSTALL_LIBEXECDIR}
的值(通常是 libexec
),它由 CMake 的 GNUInstallDirs 模块提供。要更改 QT_DEPLOY_LIBEXEC_DIR
的值,确保在找到 Core
包之前项目设置了 CMAKE_INSTALL_LIBEXECDIR
。
QT_DEPLOY_LIBEXEC_DIR
路径相对于 QT_DEPLOY_PREFIX。
此变量在部署到 macOS 应用程序包时没有意义,不应在这种情况下使用。
示例
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_LIB_DIR、QT_DEPLOY_PLUGINS_DIR、QT_DEPLOY_QML_DIR 和 QT_DEPLOY_TRANSLATIONS_DIR。
© 2024 Qt 公司 LTD。本文件中包含的文档贡献均为其所有者的版权。本文件提供的文档根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款获得许可。Qt 和相应的标志是芬兰和/或世界其他地区的 The Qt Company Ltd. 的商标。所有其他商标均为其各自所有者的财产。