コマンドラインインターフェイスによる Qt の入手とインストール

Qt Online Installer と Qt Maintenance Tool のコマンドラインインタフェースを使用して、コンポーネントのインストー ル、アンインストール、アップデート、検索を行うことができます。

コマンドラインインターフェイスは、インタラクティブな使用方法と非インタラクティブな使用方法(無人での使用)の両方をサポートしています。以下のトピックでは、コマンドラインインタフェースの使用方法に関する例と情報を提供します:

インストールのためのコンポーネント名

エイリアスパッケージによるクイックインストール

注意: エイリアスパッケージを使用したクイックインストールは、Qt オンラインインストーラリリース 4.8 で利用できるようになります。

インストールのために特定のパッケージ名を検索する代わりに、エイリアスパッケージを使用して最も一般的な設定をインストールすることができます。エイリアスパッケージは、実際のパッケージを含めるためのショートカットで、より簡単にインストールできます。

既存のエイリアスパッケージを一覧表示するには、コマンドラインインターフェ ースで以下のコマンドを使用します:

installer.exe / maintenancetool.exe search

エイリアスパッケージの内容は以下の表の通りです。

注意: 以下のエイリアスパッケージの例では、Qt 6.8.0 リリースを使用しています。常に、作業中の Qt リリースに一致するパッケージを使用することを忘れないでください。

エイリアスパッケージ名Qt オンラインインストーラ (パッケージの内容)
qt6.8.0-essentials
  • 必須モジュールライブラリ
  • 必須モジュールヘッダ
  • 必須モジュールプライベートヘッダ
  • 必須モジュールランタイムツール
  • 必須モジュール開発ツール
qt6.8.0-essentials-dev
  • 必須モジュールライブラリ
  • 必須モジュールヘッダ
  • essentialモジュールプライベートヘッダー
  • 必須モジュールランタイムツール
  • 必須モジュール開発ツール
qt6.8.0-full
  • 必須モジュールライブラリ
  • 必須モジュールヘッダ
  • 必須モジュールプライベートヘッダ
  • 必須モジュールランタイムツール
  • 必須モジュール開発ツール
  • アドオンモジュールライブラリ
  • アドオンモジュールヘッダー
  • アドオンモジュールプライベートヘッダー
  • アドオンモジュールランタイムツール
  • アドオンモジュール開発ツール
  • ソース
qt6.8.0-full-dev
  • 必須モジュールライブラリ
  • 必須モジュールヘッダ
  • 必須モジュールプライベートヘッダ
  • 必須モジュールランタイムツール
  • 必須モジュール開発ツール
  • アドオンモジュールライブラリ
  • アドオンモジュールヘッダー
  • アドオンモジュールプライベートヘッダー
  • アドオンモジュールランタイムツール
  • アドオンモジュール開発ツール
  • ソース
qt6.8.0-full-dbg
qt6.8.0-sdk
  • 最新の Qt Creator
  • qt6.8.0-full-dev (詳細は上記)
  • qt6.8.0-full-dbg (詳細は上記)
  • 忍者
  • CMake

Qt オンラインインストーラーコマンド例

# Windows: new installation with Qt Online Installer
qt-unified-windows-x64-[Qt Online Installer version]-online.exe install qt6.8.0-sdk

# macOS: new installation with Qt Online Installer
hdiutil attach qt-unified-macOS-x64-[Qt Online Installer version]-online.dmg
/Volumes/qt-unified-macOS-x64-[Qt Online Installer version]-online/qt-unified-macOS-x64-[Qt Online Installer version]-online.app/Contents/MacOS/qt-unified-macOS-x64-[Qt Online Installer version]-online install qt6.8.0-sdk
hdiutil detach /Volumes/qt-unified-macOS-x64-[Qt Online Installer version]-online

# Linux: new installation with Qt Online Installer
qt-unified-linux-x64-[Qt Online Installer version]-online.run install qt6.8.0-sdk

エイリアスでないパッケージの一覧表示

エイリアス以外のパッケージを一覧表示するには、コマンドラインインターフェイスで以下のコマンドを使用します:

installer.exe / maintenancetool.exe search --type package

特定のインストールパッケージの高度な検索

search コマンドと正規表現を使って利用可能なパッケージを検索します: search <regexp>.で結果をフィルタリングできます。 --filter-packages <regexp>.たとえば、表示名情報でフィルタリングすると、検索に役立ちます。

たとえば、次のコマンドは Qt 6.8.0 用の MSVC 2019 パッケージをすべて検索します:

search .*680.*msvc2019

検索結果を次のようにフィルタリングしても、同じ結果が得られます:

search --filter-packages DisplayName=MSVC 2019,Version=6.8.0

その結果、次のパッケージが見つかります:

<availablepackages>
    <package name="qt.qt6.680.win64_msvc2019_64" displayname="MSVC 2019 64-bit" version="6.8.0-0-202303290841"/>
    <package name="qt.qt6.680.win64_msvc2019_arm64" displayname="MSVC 2019 ARM64 (TP)" version="6.8.0-0-202303290841"/>
</availablepackages>

あるパッケージが提供されているすべての Qt バージョンを検索する場合にも、フィルタリングを使用できます。例えば、Qt Charts の Qt バージョンで提供されているすべてのパッケージを検索します:

search --filter-packages DisplayName=charts

検索結果は以下のようになります:

<availablepackages>
    <package name="qt.qt5.5125.qtcharts" displayname="Qt Charts" version="5.12.5-0-201909090651"/>
    <package name="qt.qt6.641.addons.qtcharts" displayname="Qt Charts" version="6.4.1-0-202211101525"/>
    <package name="qt.qt5.5123.qtcharts" displayname="Qt Charts" version="5.12.3-0-201904161619"/>

ユーザー操作なしでインストールする

デフォルトでは、Qt オンラインインストーラーや Qt Maintenance Tool は、インストール中に追加情報を要求することがあります。コマンドラインインターフェイスを使用した無人での使用は、適切なオプションを使用して、要求されたすべての情報を事前に提供することで可能です。

Qt オンラインインストーラによる新規インストール

以下のように、コマンドラインインターフェイスから、ユーザーの操作なしで新規インストールを行うことができます:

  1. Qt オンラインインストーラの実行ファイルを定義します。
  2. Qtオンラインインストーラの実行ファイルを定義します。 --root.
  3. コマンドを使用します。 install <list of packages>コマンドを使用しますオプションの完全なリストは、「無人使用時のオプション」を参照してください。

以下の例は、Windows、macOS、Linux 用の Qt オンラインインストーラを使用して Qt 6.8.0 のバイナリをインストールする方法を示しています。無人コマンドは自動的にライセンス (--accept-licenses)、すべてのメッセージクエリにデフォルトの回答(--default-answer)、実行を続行する許可を求めるのをスキップします(--confirm-command):

# Windows: new installation with Qt Online Installer
qt-unified-windows-x64-[Qt Online Installer version]-online.exe --root C:\Users\[username]\installation_dir --accept-licenses --default-answer --confirm-command install qt.qt6.680.win64_msvc2019_64

# macOS: new installation with Qt Online Installer
qt-unified-macOS-x64-[Qt Online Installer version]-online.dmg --root /home/<username>/installation_dir --accept-licenses --default-answer --confirm-command install qt.qt6.680.clang_644

# linux: new installation with Qt Online Installer
qt-unified-linux-x64-[Qt Online Installer version]-online.run --root /home/<username>/installation_dir --accept-licenses --default-answer --confirm-command install qt.qt6.680.gcc_64

無人使用のオプションには、無人使用で利用可能なすべてのオプションが記載されています。

Qt Maintenance Tool を使ってインストールを更新する

Qt Maintenance Tool を使ってインストールを更新するには、次のようにコマンドラインインターフェー スから行います:

  1. Qt Maintenance Tool の実行ファイルを定義します。
  2. Qt Maintenance Tool の実行ファイルを定義します。 install <list of packages>を使用しますオプションの完全なリストは、「Options for Unattended Usage」を参照してください。

以下の例では、Windows、macOS、Linux の既存のインストールに Qt Maintenance Tool を使用して Qt 6.8.0 のバイナリを追加する方法を説明します。無人コマンドは自動的にライセンス (--accept-licenses)、すべてのメッセージクエリにデフォルトの回答(--default-answer)、実行を続行する許可を求めるのをスキップします(--confirm-command):

# Windows: update installation with Qt Maintenance Tool
MaintenanceTool.exe --accept-licenses --default-answer --confirm-command install qt.qt6.680.win64_msvc2019_64

# macOS: update installation with Qt Maintenance Tool
MaintenanceTool.app/Contents/MacOS/MaintenanceTool --accept-licenses --default-answer --confirm-command install qt.qt6.680.clang_64

# linux: update installation with Qt Maintenance Tool
MaintenanceTool.run --accept-licenses --default-answer --confirm-command install qt.qt6.680.gcc_64

無人使用のオプション

以下の表に、無人コマンドライン使用時のすべてのオプションを示します:

無人使用時のオプション説明
--accept-licensesすべてのライセンス契約を自動的に受け入れます。
--accept-obligationsオープンソースのインストールでは、ユーザー入力なしで Qt オープンソースの使用義務を受け入れます。
--default-answerすべてのメッセージクエリにデフォルトの答えを返します。
--auto-answer <identifier=value>特定のクエリに対して異なる回答が必要な場合は、このオプションを使用できます。例えば、--auto-answer telemetry-question=Yes,AssociateCommonFiletypes=Yesauto-answer」については、「Message Identifiers」の「Message Identifiers」を参照してください。
--accept-messagesすべてのメッセージ・クエリを受け付けます。
--reject-messagesすべてのメッセージクエリを拒否します。
--confirm-commandデフォルトでは、Qt Online Installer と Qt Maintenance Tool は、このオプションの影響を受けるコンポーネントの概要を表示します。その後、偶発的な変更を防ぐために、操作を続ける許可を求めます。このオプションは継続の許可を求めるのをスキップします。
--email <your_email>コマンドラインからログインしたときの電子メールを提供します。詳細については、ログイン情報の提供を参照してください。
--pw <your_pw>コマンドラインからログインする際にパスワードを提供する。詳細については、ログイン情報の提供を参照してください。
--file-query <identifier=value>Qt オンラインインストーラがファイルやフォルダの場所を尋ねることがあります。--file-query <identifier=value> で場所を指定できます。例えば、--file-query PathForSDP7=<path_to_sdp>

識別子は、実際の質問とメッセージタイプの前にコマンドラインに出力されます。そこから識別子を拾うことができます。

自動応答のメッセージ識別子

--auto-answer オプションを使用すると、特定のクエリに対する答えを提供することができる。以下の表は、--auto-answer で使用される既知の識別子とその値の一覧である:

IDデフォルト
操作エラー(OperationDoesNotExistError中止、無視無視
OverwriteTargetDirectory(上書き対象ディレクトリはい、いいえいいえ
更新プロセスの停止再試行、無視、キャンセルキャンセル
キャンセルを伴うインストールエラーリトライ、無視、キャンセルキャンセル
無視付きインストールエラー再試行、無視無視
AssociateCommonFiletypesはい、いいえはい
テレメトリー・クエスチョンはい、いいえはい

ログイン情報の提供

Qt Online Installer と Qt Maintenance Tool には強制ログインがあります。強制ログインでは、qtaccount.iniファイルがキャッシュされている場合、その情報を使用します。qtaccount.iniは以下のようにあります:

ホストqtaccount.iniの場所
WindowsC:\Users\<username>\AppData\Roaming\Qt
macOS/Users/<username>/Library/Application Support/Qt/qtaccount.ini
Linux/home/<username>/.local/share/Qt/qtaccount.ini

オプションとして、電子メールとパスワードのスイッチ--email <your_email>--pw <your_pw> を使って、コマンドラインからログインすることもできます。

あるいは、jwt トークンを環境変数QT_INSTALLER_JWT_TOKEN に保存することもできます。トークンはqtaccount.iniファイルにあります。

ユーザー操作によるインストール

以下のように、コマンドラインインターフェースを使用してユーザーと対話することができます:

  1. 実行ファイルを定義します:
    • 新規にインストールする場合は、Qt オンラインインストーラーを使用します。
    • 既存のインストールを更新する場合は、Qt Maintenance Tool を使用します。
  2. 新規にインストールする場合は、インストールディレクトリを--root
  3. を使用してください。 install <list of packages>でインストールディレクトリを定義します。

以下の例では、Windows、macOS、Linux 用の Qt オンラインインストーラを使用して Qt 6.8.0 のバイナリを新規インストールする方法を示します:

# Windows: new installation with user interaction
qt-unified-windows-x64-[Qt Online Installer version]-online.exe --root C:\Users\[username]\installation_dir install qt.qt6.680.win64_msvc2019_64

# macOS: new installation with user interaction
qt-unified-macOS-x64-[Qt Online Installer version]-online.dmg --root /home/<username>/installation_dir install qt.qt6.680.clang_64

# linux: new installation with user interaction
qt-unified-linux-x64-[Qt Online Installer version]-online.run --root /home/<username>/installation_dir install qt.qt6.680.gcc_64

次の例は、Qt Maintenance Tool を使用して Qt 6.8.0 のバイナリをインストールし、既存のインストールを更新する方法を示しています:

# Windows: update installation with Qt Maintenance Tool
MaintenanceTool.exe install qt.qt6.680.win64_msvc2019_64

# macOS: update installation with Qt Maintenance Tool
MaintenanceTool.dmg install qt.qt6.680.clang_64

# Linux: update installation with Qt Maintenance Tool
MaintenanceTool.run install qt.qt6.680.gcc_64

パッケージのアンインストール

コマンドラインインターフェイスには、パッケージをアンインストールするためのコマンドが 2 つあります:

  • コマンド remove <list of packages>コマンドはリストされたパッケージをアンインストールします。
  • コマンドはインストールされているすべてのパッケージをアンインストールします。 purgeコマンドはインストールされているすべてのパッケージをアンインストールします。

両方のコマンドを Qt Maintenance Tool で使用する必要があります。

デフォルトでは、Qt Maintenance Tool はコマンドによって影響を受けるコンポーネントの概要を表示します。その後、偶発的な変更を防ぐために、動作を継続するための許可を求めます。続行許可を求めないようにするには --confirm-commandを使用すると、続行許可を求めるのをスキップできます。

以下の例では、Qt 6.8.0 のバイナリをアンインストールしています:

# windows
MaintenanceTool.exe --confirm-command remove qt.qt6.680.win64_msvc2019_64

# macOS
MaintenanceTool.dmg --confirm-command remove install qt.qt6.680.clang_64

# linux
MaintenanceTool.run --confirm-command remove qt.qt6.680.gcc_64

以下の例では、すべてのパッケージをアンインストールし、動作を続行する許可を求めています:

# Windows
MaintenanceTool.exe purge

# macOS
MaintenanceTool.dmg purge

# Linux
MaintenanceTool.run purge

インストール済みパッケージの一覧表示

インストールされているパッケージの一覧 listコマンドは、インストールされているすべてのパッケージを一覧表示します。このコマンドは Qt Maintenance Tool と一緒に次のように使用します:

# Windows
MaintenanceTool.exe list

# macOS
MaintenanceTool.dmg list

# Linux
MaintenanceTool.run list

アップデートの確認

この check-updatesコマンドは、インストールされているパッケージで利用可能なアップデートをチェックします。このコマンドは Qt Maintenance Tool とともに次のように使用します:

# Windows
MaintenanceTool.exe check-updates

# macOS
MaintenanceTool.dmg check-updates

# Linux
MaintenanceTool.run check-updates

パッケージの更新

パッケージの更新 updateコマンドはインストールされているパッケージを更新します。このコマンドは Qt Maintenance Tool とともに次のように使用します:

# windows
MaintenanceTool.exe update

# macOS
MaintenanceTool.dmg update

# linux
MaintenanceTool.run update

コマンド <installer_executable> --helpコマンドを使用します。よく使われるコマンドは以下の通りです:

コマンド使用方法
in,install <pkg ...>引数として与えられたパッケージをインストールする。何も指定しない場合は、デフォルトのパッケージ・セットをインストールします。
rm,remove <pkg ...>選択したパッケージとその子コンポーネントをアンインストールします。
ch,check-updatesQt Maintenance Tool で利用可能なアップデートに関する情報を表示します。
up,update <pkg ...>引数として指定されたパッケージを更新します。パッケージが指定されていない場合は、利用可能なすべてのアップデートをインストールします。
se,search <regexp>利用可能なパッケージを検索します。検索パターンを指定しない場合は、利用可能なパッケージをすべて表示します。--filter-packages オプションを使用すると、検索操作に追加のフィルタを指定できます。Qt Installer Framework マニュアルの「オプションの概要」を参照してください。

Qt Installer Framework マニュアルには、コマンドとオプションの詳細が記載されています。

オープンソースのミラーの選択

Qt Online Installer には、オープンソースのメタデータとダウンロード用のミラーを選択するオプションがあります。コマンドラインから --mirrorオプションを使用してコマンドラインから設定します。

例えば、--mirror を次のように使用します:

installer(.exe) --mirror http://www.nic.funet.fi/pub/mirrors/download.qt-project.org
installer(.exe) --mirror http://ftp2.nluug.nl/languages/qt
maintenancetool(.exe) --mirror http://qt.mirror.constant.com

例で示すように、フルパスではなく、'/online' の前のパスを使用します(最後にフォワードスラッシュは付けません)。

利用可能なミラーはhttps://download.qt.io/online/qtsdkrepository/windows_x86/root/qt/Updates.xml.mirrorlist。

コマンドラインインターフェイスの使い方のまとめ

Qt Installer Framework Manualでは、コマンドラインインターフェイスに関するより詳細な情報を提供しています:

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。