lollipop

開発環境構築 に従って開発環境構築済みであること。

作業ディレクトリの準備
$ mkdir -p ~/aosp_work/android
$ export ANDROID_ROOT=~/aosp_work/android
ディレクトリのパスや名前は任意。ANDROID_ROOTの設定が行われれば良いです。

ソースコードのダウンロード
$ cd $ANDROID_ROOT
$ repo init -u https://github.com/JAOSP/aosp_platform_manifest.git -b aosp-lolli
$ repo sync
初回実行時は Enable color display in this user account (y/N)? と聞かれます。
y を入力して Enter すれば良いです。

Android のビルド
aosp_build.sh の実行で出来るようにしています。
何を実行しているか、詳細を知りたい場合は aosp_build.sh を読んでください。(難しい事はしてません)

$ ./build/aosp_build.sh target_name full_or_aosp build_type parallel_num

aosp_build.sh の引数は以下のようになります。

target_name
 引数に指定する値 意味
 flounder Nexus 9
 manta Nexus 10
 grouper Nexus 7 2012
 flo Nexus 7 2013
 mako Nexus 4
 hammerhead Nexus 5

full_or_aosp
 引数に指定する値 意味
 full AOSP から出荷時相当の Android を作ります。
 gapps を組み合わせて使うことになります。
 aosp AOSP のみで作る Android となります。
 gapps を組み合わせても正しく動作しない可能性あります。

build_type
 引数に指定する値 意味
 user リリース時に使用するビルドです。
 userdebug 名前の通り、デバッグ用途です。
 USB デバッグがデフォルト有効、su コマンド使用可能等。

parallel_num
make の並列数を指定します。
並列数を増やすことで、Android のビルド時間を短縮できます。
ただし大量にメモリを使用するので、メモリ搭載量の半分くらいを目安にすると良いと思います。
例えばメモリ16GBの環境だと、8 にする。

ビルドの実行例
Nexus 5 向けに AOSP な Android を作成する場合の例。
$ ./build/aosp_build.sh hammerhead aosp userdebug 4

Comments