qt_deploy_bin_dir
いくつかのターゲットプラットフォームでランタイムバイナリをデプロイするためのプレフィックス相対サブディレクトリ。
この変数は、QT_DEPLOY_SUPPORT によって命名されたスクリプトによって定義されます。インストール中のデプロイの一部として、またはビルド後のルールとしてのみ使用する必要があります。
注: これは低レベルのデプロイメント API 変数であり、qt_generate_deploy_app_script のような高レベルの API コマンドではカバーされない高度な使用例でのみ使用する必要があります。
この変数は Qt 6.3 で導入されました。
プロジェクトは、デプロイスクリプトでQT_DEPLOY_BIN_DIR を使用し、以下のタイプのバイナリをデプロイする特定のディレクトリをハードコーディングしないようにしてください:
- すべてのプラットフォームでの実行可能ファイル。
- Windows の DLL。
QT_DEPLOY_BIN_DIR のデフォルトは、CMake のGNUInstallDirsモジュールが提供する${CMAKE_INSTALL_BINDIR} (通常はbin) です。QT_DEPLOY_BIN_DIR の値を変更するには、Core パッケージが見つかる前にプロジェクトがCMAKE_INSTALL_BINDIR を設定するようにしてください。
QT_DEPLOY_BIN_DIR のパスはQT_DEPLOY_PREFIX からの相対パスです。
この変数は、macOS アプリ・バンドルにデプロイするときには意味がないので、そのシナリオでは使用しないでください。
例
cmake_minimum_required(VERSION 3.16...3.22)
project(MyThings)
find_package(Qt6 REQUIRED COMPONENTS Core)
qt_standard_project_setup()
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 dependenciesQT_DEPLOY_SUPPORT,QT_DEPLOY_PREFIX,QT_DEPLOY_LIBEXEC_DIR,QT_DEPLOY_LIB_DIR,QT_DEPLOY_PLUGINS_DIR,QT_DEPLOY_QML_DIR,QT_DEPLOY_TRANSLATIONS_DIRも参照してください 。
© 2025 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.