qt_generate_deploy_script

カスタムデプロイスクリプトを生成します。

このコマンドはQt6 パッケージのCore コンポーネントで定義されています:

find_package(Qt6 REQUIRED COMPONENTS Core)

このコマンドは Qt 6.5 で導入されました。

概要

qt_generate_deploy_script(
    OUTPUT_SCRIPT <var>
    [TARGET target]
    [NAME script_name]
    [CONTENT content]
)

バージョンレスコマンドが無効になっている場合は、代わりにqt6_generate_deploy_script() を使用してください。このコマンドと同じ引数セットをサポートしています。

説明

このコマンドは、OUTPUT_SCRIPT オプションで指定した変数にファイルのフルパスが格納されるスクリプトを生成します。このスクリプトは CMake 生成時にのみ書き込まれる。これは、install( TARGETS) を使用してアプリケーションのターゲットがインストールされた後に、install(SCRIPT)コマンドと共に使用されることを意図しています。

このコマンドは、マルチコンフィグジェネレータに適した名前のファイルを生成します。Qt の CMake デプロイメント関数と変数にアクセスできるように、必要なインクルードが追加されます。

TARGET 引数は、スクリプトによってデプロイされるターゲットを指定します。これは、NAME が指定されない限り、生成されるスクリプトのファイル名に影響します。

NAME 引数は、ディプロイメント スクリプトの自動生成名内の識別可能な部分を制御します。NAMETARGET も指定されていない場合、NAME 引数のデフォルトはcustom です。

CONTENT 引数は、配置スクリプトに書き込まれるコードを指定します。内容にはジェネレータ式を含めることができます。

このコマンドは、Qt のデプロイメント API の関数を直接呼び出すカスタムのデプロイメント スクリプトを生成するためのものです。あまり複雑でないデプロイメントにはqt_generate_deploy_app_script()qt_generate_deploy_qml_app_script() を使用する方が便利です。

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)

install(TARGETS MyApp
    BUNDLE  DESTINATION .
    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)

qt_generate_deploy_script(
    TARGET MyApp
    OUTPUT_SCRIPT deploy_script
    CONTENT "
qt_deploy_runtime_dependencies(
    EXECUTABLE $<TARGET_FILE_NAME:MyApp>
)
")
install(SCRIPT ${deploy_script})

qt_generate_deploy_app_script()およびqt_generate_deploy_qml_app_script()も参照して ください。

© 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.