このページでは、Android 8.0 以前のバージョンで開発するためのセットアップ方法について説明します。Android 9.0 以降のビルド方法については、AOSP 開発用セットアップをご覧ください。
AOSP 開発用セットアップ(5.0~8.0)
Android のバージョンが 5.0~8.0 の場合は、付属の Dockerfile を使用することを検討してください。必要なすべてのパッケージを簡単にインストールできます。
オペレーティング システム
Android は通常、GNU Linux でビルドされます。また、Mac OS X など、サポート対象外のシステム上でも、仮想マシン内であればビルドできます。
Google は、GNU Linux 上でビルドすることをおすすめしています。Android ビルドシステムは通常、ビルドマシン上で ART を実行して、システム DEX ファイルをプリコンパイルします。ART を実行できるのは Linux 上に限られるため、Linux 以外のオペレーティング システムを使用した場合、ビルドシステムはこのプリコンパイル手順をスキップします。その結果、Android ビルドのパフォーマンスが低下します。
GNU Linux
- Android 6.0 - Android 8.0: Ubuntu 14.04(Trusty)
- Android 5.x: Ubuntu 12.0
Mac OS X(Intel / x86)
- Android 6.0 - AOSP 8.0: Mac OS X v10.10(Yosemite)以降、Xcode 4.5.2、コマンドライン ツール
- Android 5.x: Mac OS X v10.8(Mountain Lion)、Xcode 4.5.2、コマンドライン ツール
JDK
Android 7.0 - Android 8.0:
- Ubuntu: OpenJDK 8
- Mac OS X: JDK 8u45 以降
Android 5.x(Lollipop)- Android 6.0(Marshmallow):
- Ubuntu: OpenJDK 7
- Mac OS X: jdk-7u71-macosx-x64.dmg
AOSP 開発用セットアップ(2.3~4.4)
このセクションでは、Android 2.3~4.4 までのセットアップ方法を説明します。
オペレーティング システム
Android は通常、GNU Linux でビルドされます。また、Windows など、サポート対象外のシステム上でも、仮想マシン内であればビルドできます。
Google は、GNU Linux 上でビルドすることをおすすめしています。Android ビルドシステムは通常、ビルドマシン上で ART を実行して、システム DEX ファイルをプリコンパイルします。ART を実行できるのは Linux 上に限られるため、Linux 以外のオペレーティング システムを使用した場合、ビルドシステムはこのプリコンパイル手順をスキップします。その結果、Android ビルドのパフォーマンスが低下します。
GNU Linux
- Android 2.3.x - Android 4.4: Ubuntu 12.04(Precise)
Mac OS X(Intel / x86)
- Android 4.1.x - Android 4.4.x: Mac OS X v10.6(Snow Leopard)または Mac OS X v10.7(Lion)、Xcode 4.2(Apple Developer Tools)
- Android 2.3 - Android 4.0.x: Mac OS X v10.5(Leopard)または Mac OS X v10.6(Snow Leopard)、Mac OS X v10.5 SDK
GNU make
Android 4.1.x から 4.4 の場合は、GNU make(gmake)3.82 を使用してください。Android 2.3 から 4.0.x の場合は、ビルドエラーを回避するため、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 以前のバージョンの場合、Android をビルドできないバグが gmake 3.82 にあります。以下の手順に沿って、MacPorts を使用してバージョン 3.81 をインストールできます。
/opt/local/etc/macports/sources.conf
を編集して、rsync
行の上にfile:///Users/Shared/dports
を追加しますdports
ディレクトリを作成します。mkdir /Users/Shared/dports
新しい
dports
ディレクトリ内で、以下のコマンドを実行します。svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
新しいローカル リポジトリ用のポート インデックスを作成します。
portindex /Users/Shared/dports
古いバージョンの gmake をインストールします。
sudo port install gmake @3.81
JDK
- Android 2.3.x - Android 4.4.x:
- Ubuntu: Java JDK 6
- Mac OS X: Java JDK 6
Linux 版 JDK
Android オープンソース プロジェクト(AOSP)には、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 15.04 の場合、Ubuntu 15.04 OpenJDK 8 パッケージが問題なく使用されています。これ以降のバージョンのパッケージ(15.10、16.04 用のパッケージなど)は、以下の手順を使用しても 14.04 では機能しません。
old-releases.ubuntu.com から以下の 64 ビット アーキテクチャ用
.deb
パッケージをダウンロードします。openjdk-8-jre-headless_8u45-b14-1_amd64.deb
SHA2560f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
openjdk-8-jre_8u45-b14-1_amd64.deb
SHA2569ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
openjdk-8-jdk_8u45-b14-1_amd64.deb
SHA2566e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
必要に応じて、ダウンロードしたファイルのチェックサムを手順 1 の各パッケージの SHA256 文字列と照合します。たとえば、
sha256sum
ツールの場合は次のコマンドを使用します。sha256sum {downloaded.deb file}
以下のコマンドで、パッケージをインストールします。
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
Ubuntu 14.04 に必要なパッケージをインストールする
次のコマンドを実行して、Ubuntu 14.04 に必要なパッケージをインストールします。
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip$
Ubuntu 12.04 に必要なパッケージをインストールする
次のコマンドを実行して、Ubuntu 12.04 に必要なパッケージをインストールします。
$ sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so