ubuntu-12.04 (64bit)で、android-x86をビルドしてみます。
Table of Contents
1 ビルドに必要なパッケージのインストール
androidのページに載っているように、ビルドに必要なパッケージをインストールします。
$ 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 g++-multilib mingw32 tofrodos python-markdown \ libxml2-utils xsltproc zlib1g-dev:i386 libglapi-mesa:i386 \ libgl1-mesa-dri:i386 gettext yasm $ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 \ /usr/lib/i386-linux-gnu/libGL.so
2 Oracle Java JDKのインストール
Oracle Javaのページからjdk-6u45-linux-x64.binを入手します(アカウント登録が必要です)。
$ chmod a+x jdk-6u45-linux-x64.bin $ ./jdk-6u45-linux-x64.bin
PATHを通します。
$ export PATH=`pwd`/jdk1.6.0_45/bin:${PATH}
jdk1.6.045/binではなく、jdk1.6.045/bin/にすると コンパイルエラーになる現象が発生する点にご注意を。
3 repoのインストール
androidのリポジトリ管理コマンドのrepoを入手します。
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo
4 android-x86
android-x86-4.4のリリースノートに記載されている手順でandroid-x86のソースコードを取得します。
$ mkdir android-x86 $ cd android-x86 $ repo init -u http://git.android-x86.org/manifest -b android-x86-4.4-r2 $ repo sync
ビルドします。
$ make -j4 iso_img TARGET_PRODUCT=android_x86
isoイメージが作成されます。
out/target/product/x86/android_x86.iso
カーネルもビルドされるので、ローダブルモジュールの作成も可能です。 Android-x86のページのandroid-x86-4.4-r2.isoで作成したAndroid上でモジュールのロードもできました。
out/target/product/x86/obj/kernel/
5 作成したandroid-x86のisoイメージをインストールしてみたが
isoイメージをインストールしてみたところ、android-x86-4.4-r2.isoでインストールした場合と同じものになりませんでした(初回起動時に言語選択やGoogleアカウント入力のガイドが出ない)。