ブログネタ
Android に参加中!
Ubuntu 14.04 64bit版で Android のビルド環境を作った時のメモ。
AOSP の master、android 5.0.0、4.4.4 のビルドと、ビルドして出来た Emulator の起動確認をした環境。
必要なソフトのインストール
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev lib32z1 x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils python-software-properties xsltproc libx11-dev:i386 android-tools-adb android-tools-fastboot liblz4-tool gcc-4.6 g++-4.6 gcc-4.6-multilib g++-4.6-multilib

OracleJDK と OpenJDK のインストール
OpenJDK は AOSP の master と 5.0.0 をビルドするのに必要。
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update && sudo apt-get install oracle-java6-installer
$ sudo apt-get install openjdk-7-jdk

git/repo の設定
$ mkdir ~/bin
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ git config --global user.email "android"
$ git config --global user.name "android"
※メールアドレスとユーザ名は何でも良い。

環境変数の設定
~/bin/android-env.sh を作成して、以下の内容を書く。
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
export ANDROID_JAVA_HOME=$JAVA_HOME
export PATH=$PATH:~/bin
ビルドする前にandroid-env.shを読み込む。
~/.bashrc等に書いても良いが、常にこの設定がされてしまうのでビルドする時だけ読み込むのが良いと思う。
$ source ~/bin/android-env.sh

android 4.4.4 をビルドする場合は設定が異なるので注意。
android-env.sh とは別に android-kitkat-env.sh を用意した。
export CC=gcc-4.6
export CXX=g++-4.6
export JAVA_HOME=/usr/lib/jvm/java-6-oracle
export PATH=$PATH:$JAVA_HOME/bin
export ANDROID_JAVA_HOME=$JAVA_HOME
export PATH=$PATH:~/bin
ビルドする前に android-kitkat-env.sh を読み込む。
$ source ~/bin/android-kitkat-env.sh

Android のビルド確認
master の場合
$ repo init -u https://android.googlesource.com/platform/manifest
$ repo sync -j8
$ source ~/bin/android-env.sh
$ source build/envsetup.sh
$ lunch aosp_arm-eng
$ make -j8

android-5.0.0_r2 の場合
$ repo init -u https://android.googlesource.com/platform/manifest -b android-5.0.0_r2
$ repo sync -j8
$ source ~/bin/android-env.sh
$ source build/envsetup.sh
$ lunch aosp_arm-eng
$ make -j8

android-4.4.4_r2 の場合
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.4.4_r2
$ repo sync -j8
$ source ~/bin/android-kitkat-env.sh
$ source build/envsetup.sh
$ lunch aosp_arm-eng
$ make -j8