このページでは

SDKツール

Qt Online Installer では、SDKツール(sdktool )を使用して、CMakeの設定や、コンパイラ、デバッガ、デバイス、QtのバージョンなどのKitの設定を行います。例えば、コマンドラインからこのツールを使用することで、コンピュータ上のすべてのユーザーに対してQtおよびQt Creator の設定を自動的に適用することができます。単一のユーザーの場合、通常は「Preferences 」>「Kits 」で変更を行う方が簡単です。

SDK Toolを使用するには、Qtのインストールディレクトリ内のTools\sdktool\bin ディレクトリで、次のコマンドを入力します。

sdktool [OPTION] [OPERATION [OPTIONS]]

お使いの SDK Tool のバージョンがサポートしているオプションや操作に関する情報を確認するには、次のように入力します:

sdktool --help

値の型

各操作は、<KEY> <TYPE>:<VALUE> という形式の設定を、作成する構成に追加します。サポートされているTYPE の値は次のとおりです:

SDKパス

Qt Online Installer およびQt Creator のスタンドアロンインストーラは、いずれもsdktool をインストールします。インストーラからのsdktool は、デフォルトで、インストーラのQt Creator がSDK Toolが書き込んだ情報を読み取る場所を参照します。sdktool を他のQt Creator インストール先に指定するには、Qt Online Installer を使用するかオフラインインストーラを使用するかによって、--sdkpath を設定してください。

  • Qt Online Installer:<Qt_Online_Installer>/Tools/sdktool
  • Qt Creator スタンドアロンインストーラの場合:
    • Windows および Linux の場合:<qtcreator>/share/qtcreator/
    • macOSの場合 Qt Creator.app/Contents/Resources/

オプション

以下の表に、利用可能なオプションをまとめました。

オプション説明
--help | -hSDK ツールのオプションに関するヘルプを表示します。

--help <OPERATION> と入力すると、その操作に必要なオプションに関するヘルプが表示されます。

--sdkpath=<PATH> | -s <PATH>SDK ツールが出力するファイルへのパスを設定します。

操作

次の表は、利用可能な操作をまとめたものです。

操作説明
addAbiFlavorシステムアーキテクチャ (ABI) を追加します。
addCMakeCMake ツールのパスを追加します。
addDebuggerデバッガを追加します。
addDevデバイスを追加します。
addKeys<KEY> <TYPE>:<VALUE> のキーと値のペアとして設定を追加します。
addKitビルドおよび実行キットを追加します。
addQtQt バージョンを追加します。
addTCコンパイラを追加します。
find設定値を検索します。
findKey設定キーを検索します。
get設定を取得します。
rmCMakeCMake ツールへのパスを削除します。
rmDebuggerデバッガを削除します。
rmDevデバイスを削除する
rmKeys設定を削除します。
rmQtQt のバージョンを削除します。
rmTCコンパイラを削除します。

システムアーキテクチャ (ABI) の追加

addAbiFlavor

sdktool addAbiFlavor --flavor <NAME> --oses <OS>(,<OS>)*

addAbiFlavor のオプション

利用可能なオプションの概要は、次の表にまとめられています。

オプション説明必須
--flavor <NAME>システムアーキテクチャ (ABI) の名前。はい
--oses <OS>(,<OS>)*ABI が適用されるオペレーティング・システム。はい

ABI フレーバーの例

LinuxにYocto Pokyを追加するには、次のように入力します:

./sdktool addAbiFlavor \
--flavor poky \
--oses linux

CMake ツールの追加

addCMake

sdktool addCMake --id <ID> --name <NAME> --path <PATH> [<KEY> <TYPE:VALUE>]

addCMake オプション

以下の表に、利用可能なオプションをまとめました。

オプション説明必須
--id <ID>CMake インストールの ID。任意の ASCII (7 ビット) 文字列を指定できます。

文字列にバージョン番号を含めない場合、この CMake インストールを更新しても、登録済みの CMake はその ID を保持するため、すべてのキットが自動的に更新され、新しいバージョンが使用されるようになります。

はい
--name <NAME>CMake インストールの名前。はい
--path <PATH>CMake 実行ファイルへのパス。はい
<KEY> <TYPE:VALUE>キーと値のペア形式の追加設定。

詳細については、「CMake ツールの追加」を参照してください。

CMake の設定例

Windows で CMake ツールを追加するには、次のように入力します:

sdktool addCMake \
--id "my.custom.cmake" \
--name "Custom CMake" \
--path "C:\Program Files\CMake-3.30\bin\cmake.exe"

コンパイラの追加

addTC

sdktool addTC --id <ID> --language <ID> --name <NAME> --path <PATH> --abi <ABI STRING> [OPTIONS]

addTC のオプション

利用可能なオプションの概要を以下の表にまとめます。

オプション説明必須
--abi <ABI STRING>ProjectExplorer::Abi::fromString() が解析可能な形式のコンパイラの ABI。はい
--id <ID>ToolChainType:some_unique_part の形式で指定されたツールチェーンの ID。ツールチェーンのタイプは、以下のいずれか、またはプラグインによって提供されるその他の形式です。
  • ProjectExplorer.ToolChain.Msvc Microsoft MSVC コンパイラ用。このコンパイラは自動的に検出されるため、SDK ツールを使用して追加する必要はありません。
  • ProjectExplorer.ToolChain.Gcc Linux または macOS 上の GCC 用。
  • ProjectExplorer.ToolChain.Clang Clang用。
  • ProjectExplorer.ToolChain.LinuxIcc LinuxICC用。
  • ProjectExplorer.ToolChain.Mingw MinGW用。
  • ProjectExplorer.ToolChain.ClangCl Clang/CL用。
  • ProjectExplorer.ToolChain.Custom カスタムツールチェーン用。
  • Qt4ProjectManager.ToolChain.Android Android用。
  • Qnx.QccToolChain QNX QCC用。
  • WebAssembly.ToolChain.Emscripten Emscripten用。

ProjectExplorer::ToolChain から派生したクラスについて、その ID を確認してください。

some_unique_part 任意の値にできます。Qt Creator はデフォルトでGUIDを使用します。

はい
--language <ID>ツールチェーンの入力言語の ID:C またはCxx 。C または C++ コンパイラを登録する際は、対応する C++ または C コンパイラも必ず登録してください。はい
--name <NAME>ツールチェーンの名前。はい
--path <PATH>コンパイラ実行ファイルへのパス。はい
--supportedAbis <ABI STRING>,<ABI STRING>コンパイラがサポートする ABI のリスト。
<KEY> <TYPE:VALUE>キーと値のペア形式の追加設定。

詳細については、「コンパイラの追加」を参照してください。

コンパイラの例

Linux で GCC コンパイラを追加するには、次のように入力します。

./sdktool addTC \
    --id "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.g++" \
    --language Cxx
    --name "GCC (C++, x86_64)" \
    --path /home/code/build/gcc-6.3/usr/bin/g++ \
    --abi x86-linux-generic-elf-64bit \
    --supportedAbis x86-linux-generic-elf-64bit,x86-linux-generic-elf-32bit \
    ADDITIONAL_INTEGER_PARAMETER int:42 \
    ADDITIONAL_STRING_PARAMETER "QString:some string" \

デバッガーの追加

addDebugger

sdktool addDebugger --id <ID> --name <NAME> [OPTIONS]

addDebugger のオプション

以下の表に、利用可能なオプションをまとめました。

オプション説明必須
--abis <ABI,ABI>システムアーキテクチャ定義のカンマ区切りリスト。
--binary <PATH>デバッガ実行ファイルへのパス。絶対パス、値「auto 」、または ABI を指定できます。Qt Creator がバイナリのパスを認識しない場合、MSVC ツールチェーンに適したデバッガを検索します。
--engine <ENGINE>デバッガエンジンの種類:
  • GDBの場合は1
  • 4: CDB
  • 8:PDB
  • 256: LLDB
  • GDB DAP: 512
  • LLDB DAP:1024
  • uVision Debugger:4096
--id <ID>デバッガの一意のID。はい
--name <NAME>デバッガーの名前。はい
<KEY> <TYPE:VALUE>キーと値のペア形式での追加設定。

詳細については、「デバッガの追加」を参照してください。

デバッガーの例

Linux で GDB デバッガーを追加するには、次のように入力します。

./sdktool addDebugger \
    --id "company.product.toolchain.gdb" \
    --name "GDB (company, product)" \
    --engine 1 \
    --binary /home/code/build/gdb-7.12/bin/gdb \
    --abis arm-linux-generic-elf-32 \

デバイスの追加

addDev

sdktool addDev --id <ID> --name <NAME> --type <INT> [OPTIONS]

addDev オプション

以下の表に、利用可能なオプションをまとめました。使用するオプションはデバイスの種類によって異なります。

オプション説明必須
--authentication <INT>認証方式:
  • 0:すべての認証方法
  • 公開鍵と秘密鍵のペアを使用したSSH認証の場合は1
--b2qHardware <STRING>Boot to Qt ハードウェアに関するプラットフォーム情報。
--b2qSoftware <STRING>Boot to Qt ソフトウェアに関するプラットフォーム情報。
--debugServerKey <STRING>サーバーのデバッグキー。
--dockerClangdExecutable <STRING>Docker コンテナ内の Clangd 実行ファイルへのパス。
--dockerMappedPaths <STRING>セミコロンで区切られた Docker マッピングパスのリスト。
--dockerRepo <STRING>Docker イメージリポジトリ。
--dockerTag <STRING>Docker イメージのタグ。
--freePorts <STRING>使用可能なポート。
--host <STRING>デバイスのホスト名または IP アドレス。
--id <ID>デバイスの一意の ID。はい
--keyFile <STRING>ユーザーの秘密鍵ファイルへのパス。
--name <NAME>デバイスの名前。はい
--origin <INT>デバイスが自動的に検出されたかどうか:
  • 手動で追加されたデバイスの場合は 0
  • 自動的に検出されたデバイス:1
--osType <STRING>デバイスのオペレーティングシステム:
  • Android.Device.Type
  • BareMetalOsType
  • QdbLinuxOsType
  • DockerDeviceType
  • Ios.Device.Type
  • Ios.Simulator.Type
  • McuSupport.DeviceType
  • Desktop
  • WebAssemblyDeviceType
  • QnxOsType
  • GenericLinuxOsType
--password <STRING>パスワード認証用のパスワード。
--sshPort <INT>SSH接続用のポート番号。
--timeout <INT>SSH接続の再利用にかかるタイムアウト(秒単位)。
--type <INT>デバイスの種類:
  • ハードウェアデバイスの場合は 0
  • エミュレータ、シミュレータ、または仮想デバイスの場合は 1
はい
--uname <STRING>デバイスにアクセスするためのユーザー名。
<KEY> <TYPE:VALUE>キーと値のペア形式の追加設定。

詳細については、「手順:デバイス向けの開発」を参照してください。

Linux デバイスの例

Linux 上でリモートの Linux デバイス(ハードウェアデバイス)を追加し、SSH 鍵を使用してデバイスへの認証を行うには、次のように入力します。

./sdktool addDev \
    --id " LinuxDevice1" \
    --name "My Remote Linux Device" \
    --type 0 \
    --authentication 1 \
    --freePorts "10000-10100" \
    --host "10.10.10.15" \
    --keyFile "/usr/.ssh/qtc_id" \
    --origin 0 \
    --osType "GenericLinuxOsType" \
    --sshPort 22 \
    --timeout 10 \
    --uname "root"

Qt バージョンの追加

addQt

sdktool addQt --id <ID> --name <NAME> --qmake <PATH> --type <TYPE> [OPTIONS]

addQt オプション

利用可能なオプションの概要を以下の表にまとめます。

オプション説明必須
--abis <ABI,ABI>システムアーキテクチャの定義をコンマ区切りで列挙したリスト。
--id <ID>Qt インストールの ID。Qt Creator は、コンピュータにインストールされている Qt バージョンを検出すると、自動的に ID を設定します。はい
--name <NAME>Qt インストールの名前。はい
--qmake <PATH>Qt インストール内の qmake 実行ファイルへのパス。はい
--type <TYPE>Qt バージョンの種類:
  • Qt4ProjectManager.QtVersion.Android Android用。
  • Qt4ProjectManager.QtVersion.Desktop デスクトップ用 Qt の場合。
  • Qt4ProjectManager.QtVersion.Ios iOS用。
  • Qt4ProjectManager.QtVersion.QNX.QNX QNX用。
  • RemoteLinux.EmbeddedLinuxQt 組み込みLinux用。
  • Qt4ProjectManager.QtVersion.WebAssembly WebAssembly用。

QtVersion::type() によって返される文字列。

はい
<KEY> <TYPE:VALUE>キーと値のペアとして指定される追加設定。

詳細については、「Qt バージョンの追加」を参照してください。

Qt バージョンの例

Linux で自作の Qt 6.8 バージョンを追加するには、次のように入力します:

./sdktool addQt \
    --id "company.product.qt" \
    --name "Custom Qt" \
    --qmake /home/code/build/qt-6.8/bin/qmake \
    --type Qt4ProjectManager.QtVersion.Desktop \

キットの追加

addKit

sdktool addKit --id <ID> --name <NAME> --devicetype <TYPE> [OPTIONS]

addKitのオプション

以下の表に、利用可能なオプションをまとめました。

オプション説明必須
--builddevice <ID>アプリケーションをビルドするデバイスの ID。
--cmake <ID>プロジェクトのビルドに使用する CMake 実行ファイルの ID。
--cmake-config <KEY:TYPE=VALUE>キットの CMake 設定用のパラメータ。このタイプのエントリは複数追加できます。
--cmake-generator <GEN>:<EXTRA>:<TOOLSET>:<PLATFORM>プロジェクトファイルの生成に使用する CMake ジェネレータ。
--debugger <PATH>キットで使用するデバッガへのパス。このオプションを--debuggerid と併用しないでください。
--debuggerengine <ENGINE>--debugger で設定されたデバッガーの種類。--debuggerid と併用しないでください。
--debuggerid <ID>addDebugger 操作でデバッガを追加する際に使用されるIDの1つです。このオプションは、--debugger および--debuggerengine と併用しないでください。
--device <ID>アプリケーションを実行するデバイス。
--devicetype <TYPE>アプリケーションを実行するデバイスの種類:
  • Android.Device.Type Android デバイス用。
  • Desktop ローカルデスクトップ上で実行されるコード用。
  • Ios.Device.Type iOSデバイス用。
  • Ios.Simulator.Type iOSシミュレータ用。
  • GenericLinuxOsType 組み込みLinuxデバイス用。
  • WebAssemblyDeviceType Webブラウザ向け。

IDevice::type() が返す文字列。

はい
--env <VALUE>ビルド環境用の環境変数の値。このタイプのエントリは複数追加できます。
--run-env <VALUE>実行環境用の環境変数の値。このタイプのエントリは複数追加できます。
--icon <PATH>キットのアイコンとして使用する画像へのパス。
--id <ID>キットの ID。Qt Creator は、コンピュータにインストールされている Qt のバージョンを検出すると、自動的に ID を設定します。はい
--<LANG>toolchain <ID>addTC 」操作でコンパイラを追加する際に使用されるIDの1つです。<LANG> は、CCxxNim 、またはプラグインによって設定された値のいずれかです。
--mkspec <PATH>qmakeが使用するmkspec の設定です。このオプションを省略すると、設定されたQtバージョンのデフォルトのmkspec が使用されます。
--name <NAME>キットの名前。変数を使用して、Qtバージョンなど、他の操作で設定したキット要素に基づいてキット名を生成することができます。はい
--qt <ID>addQt 操作でQtバージョンを追加する際に使用されるIDの1つ。
<KEY> <TYPE:VALUE>キーと値のペア形式の追加設定。

詳細については、「キットの追加」を参照してください。

キットの例

Linux上でアプリケーションをビルドするために、GCCコンパイラと自己ビルドしたQtを使用するキットを追加するには、次のように入力します。

./sdktool addKit \
    --id "company.product.kit" \
    --name "Qt %{Qt:Version} (company, product)" \
    --debuggerid "company.product.toolchain.gdb" \
    --devicetype GenericLinuxOsType \
    --sysroot /tmp/sysroot \
    --Ctoolchain "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.gcc" \
    --Cxxtoolchain "ProjectExplorer.ToolChain.Gcc:company.product.toolchain.g++" \
    --qt "company.product.qt" \
    --mkspec "devices/linux-mipsel-broadcom-97425-g++" \

キーの追加、取得、および検索

トップレベルの設定ディレクトリを基準としたファイルのパス(.xml 拡張子を除く)を入力し、その後に 1 つ以上の `<KEY> <TYPE>:<VALUE> ` キーと値のペアを続けます。

設定済み項目の削除

CMakeツール、コンパイラ、デバッガ、デバイス、Qtバージョン、またはキットを削除するには、次のように入力します:

rm<Item> --id <ID>

ここで、<ID> は項目の ID です。

「キットの管理方法」、インストール、「キットの管理も参照してください

Copyright © The Qt Company Ltd. and other contributors. 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.