このページでは

SDK ツール

Qt Online InstallerSDK Tool (sdktool) を使用して CMake を設定し、コンパイラ、デバッガ、デバイス、Qt のバージョンなど、Kit の環境設定を行います。コマンドラインから使用することで、例えばコンピュータの全ユーザーに対して Qt とQt Creator の環境設定を自動的に設定することができます。一人のユーザーの場合は、通常、Preferences>Kits で変更する方が簡単です。

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

sdktool [OPTION] [OPERATION [OPTIONS]]

SDKツールのバージョンがサポートするオプションと操作については、次のように入力します:

sdktool --help

値の種類

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

SDK パス

Qt Online Installer およびQt Creator スタンドアロン インストーラーは、どちらもsdktool をインストールします。インストーラからのsdktool は、SDK Tool が書き込む情報をインストーラからのQt Creator が読み込む場所にデフォルト設定されます。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>ツールチェーンのID。ToolChainType:some_unique_part の形式で、ツールチェー ンタイプは以下のいずれか、またはプラグインによって提供されるその他のものである:
  • 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 の場合
  • PDB の場合は 8
  • 256(LLDB用
  • 512(GDB DAP用
  • 1024(LDB DAP用
  • 4096 uVision デバッガ用
--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>キーと値のペアとしての追加設定。

詳細については、How To: Develop for Devicesを参照してください。

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 \

キットの追加

キットの追加

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 ウェブブラウザ用

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

はい
--env <VALUE>ビルド環境の環境変数値。このタイプのエントリーは複数追加できる。
--run-env <VALUE>実行環境の環境変数値。このタイプのエントリは複数追加できます。
--icon <PATH>キットのアイコンとして使用する画像へのパス。
--id <ID>Qt Creator は、コンピュータにインストールされている Qt のバージョンを検出すると、自動的に ID を設定します。はい
--<LANG>toolchain <ID>addTC の操作でコンパイラを追加するときに使用される ID の 1 つです:C Cxx,Nim, またはプラグインによって設定されたものです。
--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です。

How To: Manage Kits(キットの管理)」、「Installation(インストール)」、「Kits(キット)」も参照してください

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.