旧バージョンのサポート

比較的最近の旧リリースをビルドする(Android 5.0 Lollipop 以降)

Android のバージョンが 8.0(Oreo または O)~5.0(Lollipop または L)の場合は、付属の Dockerfile を使用することを検討してください。それにより、すべての必須パッケージを簡単にインストールできます。

古い旧リリースをビルドする(Android 4.4 KitKat 以前)

オペレーティング システム

Android は通常、GNU/Linux でビルドされます。また、Windows など、サポート対象外のシステム上でも、仮想マシン内で Android をビルドできます。

Google では、GNU/Linux 上でビルドすることをおすすめしています。Android ビルドシステムは通常、ビルドマシン上で ART を実行して、システム DEX ファイルをプリコンパイルします。ART を実行できるのは Linux 上に限られるため、Linux 以外のオペレーティング システムを使用した場合、ビルドシステムはこのプリコンパイル手順をスキップします。その結果、Android ビルドのパフォーマンスが低下します。

GNU/Linux

  • Android 6.0(Marshmallow) - AOSP master: Ubuntu 14.04(Trusty)
  • Android 2.3.x(Gingerbread) - Android 5.x(Lollipop): Ubuntu 12.04(Precise)
  • Android 1.5(Cupcake) - Android 2.2.x(Froyo): Ubuntu 10.04(Lucid)

Mac OS X(Intel/x86)

  • Android 6.0(Marshmallow) - AOSP master: Mac OS X v10.10(Yosemite)以降、Xcode 4.5.2、コマンドライン ツール
  • Android 5.x(Lollipop): Mac OS X v10.8(Mountain Lion)、Xcode 4.5.2、コマンドライン ツール
  • Android 4.1.x(Jelly Bean) - Android 4.4.x(KitKat): Mac OS X v10.6(Snow Leopard)または Mac OS X v10.7(Lion)、Xcode 4.2(Apple Developer Tools)
  • Android 1.5(Cupcake) - Android 4.0.x(Ice Cream Sandwich): Mac OS X v10.5(Leopard)または Mac OS X v10.6(Snow Leopard)、Mac OS X v10.5 SDK

GNU make

AOSP master ブランチから Android 4.1.x(Jelly Bean)までのバージョンの場合は、GNU make(gmake)3.82 を使用してください。Android 4.0.x(Ice Cream Sandwich)以前のバージョンの場合は、ビルドエラーを回避するため、gmake 3.82 よりも古いバージョンに戻してください。

Xcode と他のパッケージ

Mac OS X v10.8 以前のバージョンの場合は、Apple デベロッパー サイトから Xcode をインストールします。Apple デベロッパーとして登録していない場合、ダウンロードするには、Apple ID を作成する必要があります。

Mac OS X v10.4 を使用している場合は、以下のコマンドで Bison もインストールします。

    POSIXLY_CORRECT=1 sudo port install bison

MacPorts の場合は、以下のコマンドを発行します。

    POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg

Homebrew の場合は、以下のコマンドを発行します。

    brew install gmake libsdl git gnupg2

gmake 3.82 よりも古いバージョンに戻す

Android 4.0.x(Ice Cream Sandwich)以前のバージョンの場合、Android をビルドできないバグが gmake 3.82 にあります。以下の手順に沿って、MacPorts を使用してバージョン 3.81 をインストールしてください。

  1. /opt/local/etc/macports/sources.conf を編集して、次の行を追加します。
        file:///Users/Shared/dports
    追加する場所は rsync 行の上です。次に、以下のディレクトリを作成します。
        mkdir /Users/Shared/dports
  2. 新しい dports ディレクトリ内で、以下のコマンドを実行します。
        svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
  3. 新しいローカル リポジトリ用のポート インデックスを作成します。
        portindex /Users/Shared/dports
  4. 古いバージョンの gmake をインストールします。
        sudo port install gmake @3.81

JDK

サポート対象のバージョン

Linux 版 JDK

Android オープンソース プロジェクト(AOSP)の Android master ブランチの場合、prebuilts/jdk/ に、ビルド済みバージョンの OpenJDK が用意されているため、追加のインストールは必要ありません。

以前のバージョンの Android の場合、JDK を個別にインストールする必要があります。Ubuntu では、OpenJDK を使用します。

Ubuntu 15.04 以降の場合

以下のコマンドを実行します。

sudo apt-get update
sudo apt-get install openjdk-8-jdk

Ubuntu LTS 14.04 の場合

Ubuntu 14.04 向けにサポートされている OpenJDK 8 パッケージはありません。Ubuntu 14.04 の場合、Ubuntu 15.04 OpenJDK 8 パッケージが問題なく使用されています。これ以降のバージョンのパッケージ(15.10、16.04 用のパッケージなど)は、以下の手順を使用しても 14.04 では機能しません。

  1. old-releases.ubuntu.com から以下の 64 ビット アーキテクチャ用 .deb パッケージをダウンロードします。
    • openjdk-8-jre-headless_8u45-b14-1_amd64.deb
      SHA256 0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
    • openjdk-8-jre_8u45-b14-1_amd64.deb
      SHA256 9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
    • openjdk-8-jdk_8u45-b14-1_amd64.deb
      SHA256 6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
  2. 必要に応じて、ダウンロードしたファイルのチェックサムを上記の各パッケージの SHA256 文字列と照合します。たとえば、sha256sum ツールの場合は、以下のように記述します。
        sha256sum {downloaded.deb file}
  3. 以下のコマンドで、パッケージをインストールします。
        sudo apt-get update
    以下のコマンドで、ダウンロードした各 .deb ファイルに対して dpkg を実行します。依存関係が欠落しているため、エラーが発生する場合があります。
        sudo dpkg -i {downloaded.deb file}
    欠落している依存関係を解決するには、以下のコマンドを使用します。
        sudo apt-get -f install

(省略可)デフォルト Java バージョンを更新する

必要に応じて、上記の Ubuntu バージョンに対し、次のコマンドを実行してデフォルト Java バージョンを更新します。

sudo update-alternatives --config java
sudo update-alternatives --config javac