- 共通テーマ:
- Android テーマに参加中!
Android のビルド環境
Ubuntu 12.04 64bit 版での環境構築手順 を使用。
AOSP から Android のソースコードをダウンロード
android-4.2.1_r1 から変更する内容
x-loader、u-boot、kernel の作成
Android のビルドから PandaBoard、PandaBoard ES の起動まで
PandaBoard で Android 4.2.1_r1 が動作してる様子。


無線LAN、タッチパネル、音OK。
Ubuntu 12.04 64bit 版での環境構築手順 を使用。
AOSP から Android のソースコードをダウンロード
- 作業用のフォルダを作成する(場所はホーム直下でなくて良い)
- android-4.2.1_r1 のソースコードを取得する
- Binaries for PandaBoard のダウンロードと展開
$ mkdir ~/panda_work
$ export PANDA_WORK=~/panda_work
$ mkdir ~/panda_work/android
$ export ANDROID_ROOT=~/panda_work/android
$ cd $ANDROID_ROOT
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.2.1_r1
$ repo sync
$ wget https://dl.google.com/dl/android/aosp/imgtec-panda-20120807-c4e99e89.tgz
$ tar zxvf imgtec-panda-20120807-c4e99e89.tgz
$ ./extract-imgtec-panda.sh
android-4.2.1_r1 から変更する内容
- 変更は4つ
- ビルドして出来たイメージを SD カードに書き込む為のスクリプトを追加
$ cd $ANDROID_ROOT/build/
$ wget http://sola-dolphin-1.net/data/Panda/0001-panda-jb4.2_build.patch
$ git apply 0001-panda-jb4.2_build.patch
$ cd $ANDROID_ROOT/device/ti/panda/
$ wget http://sola-dolphin-1.net/data/Panda/0001-panda-jb4.2_device-ti-panda.patch
$ git apply 0001-panda-jb4.2_device-ti-panda.patch
$ cd $ANDROID_ROOT/hardware/ti/omap4xxx/
$ wget http://sola-dolphin-1.net/data/Panda/0001-panda-jb4.2_hardware-ti-omap4xxx.patch
$ git apply 0001-panda-jb4.2_hardware-ti-omap4xxx.patch
$ cd $ANDROID_ROOT/hardware/ti/wpan/
$ wget http://sola-dolphin-1.net/data/Panda/0001-panda-jb4.2_hardware-ti-wpan.patch
$ git apply 0001-panda-jb4.2_hardware-ti-wpan.patch
$ cd $ANDROID_ROOT
$ wget http://sola-dolphin-1.net/data/Panda/0001-add-mksdcard_pandaboard.sh.patch
$ git apply 0001-add-mksdcard_pandaboard.sh.patch
x-loader、u-boot、kernel の作成
- toolchain のダウンロードと環境変数の設定
- x-loader のビルド
- u-boot のビルド
- kernel のビルド
$ cd $PANDA_WORK
$ git clone https://android.googlesource.com/platform/prebuilt
$ export ARCH=arm
$ export CROSS_COMPILE=$PWD/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
$ cd $PANDA_WORK
$ git clone git://git.omapzoom.org/repo/x-loader.git
$ cd x-loader
$ git checkout -b omap4_dev origin/omap4_dev
$ make omap4430panda_config
$ make ift
$ cp -a MLO $ANDROID_ROOT/device/ti/panda/xloader.bin
$ cd $PANDA_WORKブートパラメータを変更する
$ git clone git://git.omapzoom.org/repo/u-boot.git
$ cd u-boot
$ git checkout -b omap4_dev origin/omap4_dev
$ wget http://android-development-environment.googlecode.com/files/0001-change-bootarges.patchu-boot をビルドする
$ git apply 0001-change-bootarges.patch
$ make omap4430panda_config
$ make
※make -j4、make -j8 等で並列化してビルド可能。
$ cp -a u-boot.bin $ANDROID_ROOT/device/ti/panda/bootloader.bin
$ cd $PANDA_WORKHM-TL10T/HM-TL7T のタッチパネルを使うための変更。
$ git clone https://android.googlesource.com/kernel/omap.git kernel
$ cd kernel
$ git checkout -b android-omap-panda-3.0 origin/android-omap-panda-3.0
$ wget http://sola-dolphin-1.net/data/Panda/0001-panda-jb4.2_kernel.patchkernel をビルドする
$ git apply 0001-panda-jb4.2_kernel.patch
$ make panda_defconfig
$ make
※make -j4、make -j8 等で並列化してビルド可能。
$ cp -a arch/arm/boot/zImage $ANDROID_ROOT/device/ti/panda/kernel
Android のビルドから PandaBoard、PandaBoard ES の起動まで
- Android のビルド
- SD カードへイメージの書き込み SD カードは 4GB 以上のものを使用する事。
- Android の起動 PandaBoard や PandaBoard ES に SD を差して電源を入れれば Android が起動する。
$ cd $ANDROID_ROOT
$ source build/envsetup.sh
$ lunch full_panda-userdebug
$ make
※make -j4、make -j8 等で並列化してビルド可能。
$ LANG=C sudo ./mksdcard_pandaboard.sh /dev/sdX $ANDROID_ROOT
/dev/sdX は SD カードのデバイスファイルを指定する。
映像出力は DVI の方から。(HDMIではない)
HM-TL10T や HM-TL7T を繋げば、タッチパネルでの操作が可能。
タッチパネルは ICS な PandaBoard でタッチパネル付き液晶(HM-TL10T)を使う を参照。
PandaBoard で Android 4.2.1_r1 が動作してる様子。


無線LAN、タッチパネル、音OK。
一つ質問がありますが移植し、マウスを動かすと、画面の表示が遅く(反応)になりますね。これはグラフィックスライブラリをインストールしなくてそうですか?日本語ができたら良かったがもしやする心に書いて見ます。