今回はビルドから起動の確認まで行いますが、使うのはUbuntu 10.10(64bit版)です。
(Ubuntu 11.10とかはデスクトップがいまいち気に入らないので見送り中)
環境構築
環境構築については以前のこちらと、JDK6のインストールを参考に。
あと、Toolchainに関してですが、こちらを見たところ、新しいバージョンを使う必要がありそうということで、手順の通りインストールしておきます。
$ wget http://snapshots.linaro.org/android/~linaro-android/toolchain-4.6-2012.03/2/android-toolchain-eabi-linaro-4.6-2012.03-2-2012-03-15_12-39-18-linux-x86.tar.bz2
$ sudo tar -jxvf android-toolchain-eabi-linaro-* -C /opt/
(※-Cオプションで展開場所を指定しています。展開場所はお好みですが、いちおう/opt/あたりに置くのが定説)
$ sudo tar -jxvf android-toolchain-eabi-linaro-* -C /opt/
(※-Cオプションで展開場所を指定しています。展開場所はお好みですが、いちおう/opt/あたりに置くのが定説)
ソースツリーの取得とビルド
Linaroのブログのこちらの記事に書かれている通りですが、BUILDTYPEは前回同様に"tracking-panda"としましょう。
$ mkidr android_404_tracking-panda
$ cd android_404_tracking-panda
$ repo init -u git://android.git.linaro.org/platform/manifest.git -b linaro_android_4.0.4 -m tracking-panda.xml
$ repo sync
(2~3時間はかかるかもしれません)
$ cd android_404_tracking-panda
$ repo init -u git://android.git.linaro.org/platform/manifest.git -b linaro_android_4.0.4 -m tracking-panda.xml
$ repo sync
(2~3時間はかかるかもしれません)
環境さえそろっていればビルドは下記のコマンド一つでOK。
$ make -j4 TARGET_PRODUCT=pandaboard TARGET_SIMULATOR=false TARGET_TOOLS_PREFIX=/opt/android-toolchain-eabi/bin/arm-linux-androideabi- boottarball systemtarball userdatatarball showcommands 2>&1 | tee build.log
※手順の通りだとビルドログがまったく表示されず進捗具合がわかりませんので、後ろのほうを若干修正しておきます。(tee log ・・・ 表示内容をそのままlogに保存。)
ビルドにかかる時間は環境にもよりますが、4コア4GBメモリの仮想マシン上で大体1~2時間ぐらいです。out/target/product/pandaboard以下に出来上がります。※手順の通りだとビルドログがまったく表示されず進捗具合がわかりませんので、後ろのほうを若干修正しておきます。(tee log ・・・ 表示内容をそのままlogに保存。)
ビルドイメージ書き込みと起動
ビルドしたイメージのSDカードへの書き込みは毎度の通り。
$ cd ~/android_404_tracking-panda/out/target/product/pandaboard
$ sudo linaro-android-media-create --mmc /dev/sdb --dev panda --system system.tar.bz2 --boot boot.tar.bz2 --userdata userdata.tar.bz2
※/dev/sdbの部分は認識されているSDカードのデバイスファイル名にあわせて変更すること
$ sudo linaro-android-media-create --mmc /dev/sdb --dev panda --system system.tar.bz2 --boot boot.tar.bz2 --userdata userdata.tar.bz2
※/dev/sdbの部分は認識されているSDカードのデバイスファイル名にあわせて変更すること
そして、プロプライエタリなライブラリを、下記コマンドで後入れします。(12.03のものを使いましたが、内容は一緒だと思いますのでそのまま使えるでしょう)
$ wget http://releases.linaro.org/12.03/android/images/panda-ics-gcc46-tilt-tracking-blob/install-binaries.sh
$ chmod a+x install-binaries.sh
$ ./install-binaries.sh /dev/sdb2
※/dev/sdbの部分はSDカードへの書き込みで使用したデバイスファイル名と合わせる
ダウンロードが始まり、続いてライセンスの表示(Enter)、スペースで条項をスクロールして、同意するか聞かれますので、すかさず "I ACCEPT"と打ってEnterです。
$ chmod a+x install-binaries.sh
$ ./install-binaries.sh /dev/sdb2
※/dev/sdbの部分はSDカードへの書き込みで使用したデバイスファイル名と合わせる
ダウンロードが始まり、続いてライセンスの表示(Enter)、スペースで条項をスクロールして、同意するか聞かれますので、すかさず "I ACCEPT"と打ってEnterです。
起動させてみますと、
はい!android 4.0.4が起動しました!(パチパチ)
機能的には12.03のリリースとほどんど変わっていないようです。(現在のところ。)