Git リポジトリから Qt ソースを取得する

はじめに

このセクションでは、Git バージョン管理システムを通して Qt ソースを取得する方法について説明します。これは、すでに Git を使用しているソフトウェア開発プロセスや、異なるバージョンの Qt をテストする際に役立ちます。また、Qt に貢献する予定がある場合にも不可欠です。

注意: Qt のソースは、Qt Online Installer を使ってインストールすることもできます。また、Qt アカウント(商用ユーザー)やdownload.qt.io(オープンソースユーザー)からアーカイブとしてダウンロードすることもできます。

Qt は、qt5 のスーパーモジュールで結び付けられた、いくつかの Git サブモジュールで開発・管理されています。Git から Qt のソースを取得するには、Git コマンドラインを使ってトップレベルの Git リポジトリをクローンし、Qtconfigure コマンドを使ってサブモジュールを初期化します。

注意: Qt 5 と Qt 6 は同じリポジトリを共有しており、Qt 6 を使用している場合でもqt5 リポジトリに対して作業することになります。

準備

まず、Building Qt Sources(Qtソースのビルド)と、お使いのプラットフォームの要件セクションを確認し、すべての前提条件がインストールされていることを確認してください。さらに、最近のバージョンの Git が必要です。

Qt のソースをクローンする場所を計画するときは、Qt はソースコードをビルドの成果物とは別に置くアウトオブソースビルドをサポートしていることを覚えておいてください。これにより、Gitクローンがクリーンな状態に保たれ、同じソースツリーから異なるバージョンのQtをビルドすることが可能になります。この概要では、Qt ソースを含むディレクトリをqt-sources と呼び、ビルド成果物を含むディレクトリをqt-build と呼びます。

Qt Git リポジトリのクローン

まず、qt-sources ディレクトリを作成します。このディレクトリから、Git を使ってソースをクローンします。以下では、Gitのコマンドラインインターフェイスを使います。Qtがカレントディレクトリにクローンされることを示す、末尾の'.'文字に注意してください。

git clone --branch v6.8.2 git://code.qt.io/qt/qt5.git .

httpsプロトコルを使うこともできます。

git clone --branch v6.8.2 https://code.qt.io/qt/qt5.git .

最新の開発バージョンをテストするには、--branch 引数を省略してください。

Qt サブモジュールの初期化

次に、ビルド・ディレクトリqt-build を作成します。このディレクトリ内で、configureコマンドを-init-submodules オプションを付けて実行します。

qt-sources/configure -init-submodules

これによって、qt-sources ディレクトリにあるすべての Qt サブモジュールが再帰的に初期化されます。

-init-submodules は他のconfigure引数と組み合わせることができることに注意してください。使用する Qt サブモジュールが決まっている場合は、-submodules 引数を使用することで、設定時間を短縮できます。

qt-sources/configure -init-submodules -submodules qtdeclarative

これにより、qtdeclarative と必要なサブモジュールが初期化されます。

Qtのビルド

Qt ソースのセットアップが完了したら、「Qt ソースのビルド」で説明したように、プラットフォーム用に Qt をビルドします。-init-repository 引数は、Qt の初期設定時とブランチを切り替えた後にのみ必要です。

Qt への貢献

Qt への貢献を計画している場合は、Qt を最初に設定するときに-codereview-username を指定してください。

qt-sources/configure -init-submodules -codereview-username <Gerrit username>

Qt への貢献と Gerrit ユーザー名の作成に関する詳細は、The Qt Project のホームページを参照してください。

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