Qt for Android - ソースからのビルド

このページでは、Qt for Android の設定とビルドの手順について説明します。ビルド済みの Qt for Android をダウンロードしてインストールするには、「Qt を始める」のページの指示に従ってください。

前提条件

Qt for Android をソースからビルドするには、Getting Started with Qt for Androidに記載されているすべての要件が満たされていることを確認してください。

Windows

Windows 上で Qt for Android をビルドするには、以下のソフトウェアも必要です:

  • Mingw-w64 13.1 ツールチェイン

注意: Qt for Android は Microsoft Visual C++ (MSVC) を使用したソースからのビルドをサポートしていません。

前提条件をインストールし、そのバイナリパスをシステムPATH に追加します:

set MINGW_ROOT=<MINGW_ROOT_PATH>\bin
set PATH=%MINGW_ROOT%;%PATH%

インストールを確認するには、以下のコマンドを実行してください:

where mingw32-make.exe

コマンドは、パス<MINGW_ROOT>の下にある mingw32-make.exe を最初にリストする必要があります。

ソースの入手

QtDownloadsページから Qt のソースをダウンロードするか、wiki のソースコード入手ガイドに従ってください。

設定

Qt 6 では、CMake を使ってソースコードから Qt for Android をビルドすることができます。つまり、Android 用に Qt をビルドするには、ホストとして使用するデスクトッププラットフォーム(Linux、macOS、Windows)用に Qt をビルドする必要があります。

Qt for Android ビルドで使用する最小限のホストビルドを設定するには、以下のコマンドを使用します:

mkdir ~/dev/build-host
cd ~/dev/build-host
./configure -developer-build -nomake tests -nomake examples
cmake --build . --target host_tools

このコマンドを実行すると、ホスト用の開発者ビルドが構成され、Android ビルドに必要な依存関係のみがビルドされます。ホスト用の完全でカスタマイズ可能なビルドの詳細については、{Qt ソースのビルド}を参照してください。

Qt for Android を設定するには、シャドウビルドディレクトリを作成し、ソースディレクトリをクリーンな状態に保ちます:

mkdir -p ~/dev/build-qt-android
cd ~/dev/build-qt-android

Qt for Android は以下のデバイス・アーキテクチャ(ABI)をサポートしています:arm64-v8a x86_64 x86Qt for Android は以下のデバイス・アーキテクチャ(ABI)をサポートしています。armeabi-v7a

そして configure スクリプトを実行してください:

./configure -prefix <install_path> -qt-host-path <qt_host_install_path> \
    -android-abis <abi> -android-sdk ~/Android/Sdk -android-ndk ~/Android/Sdk/ndk/26.1.10909125

Android SDKは、Qt CreatorまたはAndroid Studioによって、一般的に以下の場所にインストールされます:

  • Linux: ~/Android/Sdk/
  • macOS: ~/Library/Android/sdk/
  • WindowsWindows: C:¥Users<USER>¥AppData¥Local¥Android¥Sdk

注意: ninja の実行ファイルがある場合、configure は常にNinjaジェネレーターとビルドツールを使用します。Ninjaはクロスプラットフォームで、機能が豊富で、パフォーマンスが高く、すべてのプラットフォームで推奨される。他のジェネレータを使っても動作するかもしれませんが、公式にはサポートされていません。

高度な設定引数

Qt for Android には Java コードが含まれており、javacコンパイラで*.jarファイルにコンパイルされます。ソースとターゲットのjavac のバージョンを設定するには、それぞれ-android-javac-source-android-javac-targetを使用します:

-android-javac-source 8 -android-javac-target 8

Qtをプレフィックスビルドではなくデベロッパビルドとしてビルドするには、-prefix 引数の代わりに以下を使用します:

-developer-build

注意: この configure 引数を使用する場合、Qt のビルドをインストールする必要はありません。

configure オプションの詳細についてはQt Configure Optionsを参照してください。

ビルド

Qt をビルドするには、以下のコマンドを実行します:

cmake --build . --parallel

インストール

プレフィックスビルドの場合、Qt をインストールするには以下のコマンドを実行します:

cmake --install .

Unix の場合、-prefix <install_path> の configure オプションを指定しないと、/usr/local/Qt-<version> の下にインストールされます。この場合、sudo を install コマンドで指定する必要があります。

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