QT_DEPLOY_BIN_DIR
Sous-répertoire relatif au préfixe destiné au déploiement des binaires d'exécution sur certaines plateformes cibles.
Cette variable est définie par le script dont le nom est spécifié par QT_DEPLOY_SUPPORT. Elle ne doit être utilisée que dans le cadre du déploiement lors de l'installation ou d'une règle post-compilation.
Remarque : il s’agit d’une variable d’API de déploiement de bas niveau, qui ne doit être utilisée que dans des cas d’utilisation avancés non couverts par les commandes d’API de niveau supérieur, telles que ` qt_generate_deploy_app_script`.
Cette variable a été introduite dans Qt 6.3.
Les projets doivent utiliser ` QT_DEPLOY_BIN_DIR ` dans leurs scripts de déploiement afin d'éviter de coder en dur un répertoire particulier dans lequel déployer les types de binaires suivants :
- Exécutables sur toutes les plateformes.
- Les DLL sous Windows.
QT_DEPLOY_BIN_DIR La valeur par défaut est celle de ` ${CMAKE_INSTALL_BINDIR} ` (généralement ` bin`), fournie par le module GNUInstallDirs de CMake. Pour modifier la valeur de ` QT_DEPLOY_BIN_DIR`, assurez-vous que le projet définit ` CMAKE_INSTALL_BINDIR ` avant que le paquet ` Core ` ne soit détecté.
Le chemin d’accès à QT_DEPLOY_BIN_DIR est relatif à QT_DEPLOY_PREFIX.
Cette variable n’a pas de sens lors du déploiement dans un bundle d’application macOS et ne doit pas être utilisée dans ce cas de figure.
Exemple
cmake_minimum_required(VERSION 3.16...3.22)
project(MyThings)
find_package(Qt6 REQUIRED COMPONENTS Core)
qt_standard_project_setup()
# Keep the QT_DEPLOY_* references below for the generated script to expand,
# see \l {QTP0008}.
qt_policy(SET QTP0008 NEW)
qt_add_executable(MyApp main.cpp)
set_target_properties(MyApp PROPERTIES
WIN32_EXECUTABLE TRUE
MACOSX_BUNDLE TRUE
)
# App bundles on macOS have an .app suffix
if(APPLE)
set(executable_path "$<TARGET_FILE_NAME:MyApp>.app")
else()
set(executable_path "\${QT_DEPLOY_BIN_DIR}/$<TARGET_FILE_NAME:MyApp>")
endif()
# Helper app, not necessarily built as part of this project.
qt_add_executable(HelperApp helper.cpp)
set(helper_app_path "\${QT_DEPLOY_BIN_DIR}/$<TARGET_FILE_NAME:HelperApp>")
# Generate a deployment script to be executed at install time
qt_generate_deploy_script(
TARGET MyApp
OUTPUT_SCRIPT deploy_script
CONTENT "
qt_deploy_runtime_dependencies(
EXECUTABLE \"${executable_path}\"
ADDITIONAL_EXECUTABLES \"${helper_app_path}\"
GENERATE_QT_CONF
VERBOSE
)")
# Omitting RUNTIME DESTINATION will install a non-bundle target to CMAKE_INSTALL_BINDIR,
# which coincides with the default value of QT_DEPLOY_BIN_DIR used above, './bin'.
# Installing macOS bundles always requires an explicit BUNDLE DESTINATION option.
install(TARGETS MyApp HelperApp # Install to CMAKE_INSTALL_PREFIX/bin/MyApp.exe
# and ./binHelperApp.exe
BUNDLE DESTINATION . # Install to CMAKE_INSTALL_PREFIX/MyApp.app/Contents/MacOS/MyApp
)
install(SCRIPT ${deploy_script}) # Add its runtime dependenciesVoir aussi QT_DEPLOY_SUPPORT, QT_DEPLOY_PREFIX, QT_DEPLOY_LIBEXEC_DIR, QT_DEPLOY_LIB_DIR, QT_DEPLOY_PLUGINS_DIR, QT_DEPLOY_QML_DIR et QT_DEPLOY_TRANSLATIONS_DIR.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.