2011年12月10日土曜日

pandaboardでAndroid ICS(Kernelビルド編)

前回はAndroidビルドを行ったところで、続きましてはKernelのビルドです。
Android 4.0では、Linux Kernelバージョンは3.0となっているようです。

ビルド環境については前回に引き続きになります。(Ubuntu10.04でAndroidビルド用に一連のパッケージをインストールした状態)

まずはビルドに必要なtoolchainをダウンロードして/optに展開しましょう。
(展開場所はお好みですが、ツールチェインは/optに置くのが普通らしいので)
$ cd ~/work/
$ wget http://sourcery.mentor.com/sgpp/lite/arm/portal/package6488/public/arm-none-linux-gnueabi/arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
$ sudo tar jxvf arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /opt/

ビルドにmkimageコマンドが必要ですので、u-boot-toolsパッケージを追加でインストールしておきます。
$ sudo apt-get install u-boot-tools

続いてpandaboard用のkernelのダウンロード。
omapのリポジトリにてpanda用の3.0をチェックアウトです。
$ mkdir ~/work/kernel
$ cd ~/work/kernel
$ git clone https://android.googlesource.com/kernel/omap
$ cd omap
$ git checkout -b android-omap-panda-3.0 origin/android-omap-panda-3.0

kernelのビルド手順は以下の通り。
まず最初にARCHとCROSS_COMPILEの環境変数をarmと先ほど展開したツールチェインに設定しておきます。あとはmakeコマンドをポンっと叩けば出来上がり。
$ export ARCH=arm
$ export CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-linux-gnueabi-
$ cd ~/work/kernel/omap/
$ make panda_defconfig
$ make uImage modules -j4
※-jなどの意味は前回と同じですね。

uImageがarch/arm/boot/下に出来上がります。

今回はここまで、続きはまた次回。

0 件のコメント:

コメントを投稿