« BeagleBone Black に Ubuntu 13.04 を入れた | トップページ | BeagleBone Black で Wi-Fi »

2013.08.28

BeagleBone Black に Android を入れた

例によって micro SD に入れただけだが。

http://processors.wiki.ti.com/index.php/TI-Android-JB-4.2.2-DevKit-4.1.1_DeveloperGuide
ここの通り。

■ソースの取得。
妙に遅かったから apt-get update & upgrade した。
ら、速くなった。git の version に依るのだろうか?たまたまか?
fatal: early EOF が結構出てたのがなくなった。

mkdir -p work/BBB/android
cd work/BBB/android
repo init -u git://gitorious.org/rowboat/manifest.git -m TI-Android-JB-4.2.2-DevKit-4.1.1.xml
repo sync -j8

sudo apt-get update
sudo apt-get upgrade
repo sync -j8

■u-boot の build

export PATH=~/work/BBB/android/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin:$PATH
cd ~/work/BBB/android/u-boot
make CROSS_COMPILE=arm-eabi- distclean
make CROSS_COMPILE=arm-eabi- am335x_evm_config
make CROSS_COMPILE=arm-eabi- -j4

■kernel の build

cd ~/work/BBB/android/kernel
make ARCH=arm CROSS_COMPILE=arm-eabi- distclean
make ARCH=arm CROSS_COMPILE=arm-eabi- am335x_evm_android_defconfig
make ARCH=arm CROSS_COMPILE=arm-eabi- uImage -j4

■Android の build

cd ~/work/BBB/android
make TARGET_PRODUCT=beagleboneblack OMAPES=4.x -j4
make TARGET_PRODUCT=beagleboneblack fs_tarball
make TARGET_PRODUCT=beagleboneblack OMAPES=4.x -j4 sdcard_build

sdcard_build を付けて make すれば、u-boot も kernel も全部 build してくれるように書かれてるけど、してくれなかった。ので、u-boot, kernel を build してから、sdcard_build を外して make、fs_tarball を付けて make した後に、sdcard_build を付けて make した。

■micro SD に入れる

cd out/target/product/beagleboneblack/beagleboneblack
sudo LANG=C ./mkmmc-android.sh /dev/sdX

例によって、/dev/sdX は環境に依る。
micro SD が Windows で使ってたものだとうまくいかず、一旦、sudo fdisk /dev/sdX して、d で全部消して w で消した状態のを書き込んでから mkmmc-android.sh を実行する必要があった。script 的に fdisk -l /dev/sdX を実行した結果を grep DISK してて、Windows で使っていたものだと DISK になるところが FAT32 とかになってしまって見つからないみたい。
途中で出る
cp: cannot stat `START_HERE': No such file or directory
というエラーは気にしなくていいはず。START_HERE を指定しておくと、そこからもコピーしてくれるっぽい。

追記:ソースから作れるのはすごい安心感があるけど、ちょっと設定変えると System UI が死ぬのを繰り返すから、Ubuntu の方がいいかも。デフォルトの live wallpaper をただの画像に変えただけで、System UI が死ぬのを繰り返すようになってしまう。。
最初の repo init の時に rowboat-jb.xml を指定すれば最新のを取得できると書かれてるので、後で試してみるか。

さらに追記:rowboat-jb.xml なんてなかった。。 web の説明は古いね。。  ls .repo/manifests で manifest のリストが見れるので、確認して、rowboat-jb-am335x.xml を指定すればうまくいった。けど、こっちのが古いかも??

|

« BeagleBone Black に Ubuntu 13.04 を入れた | トップページ | BeagleBone Black で Wi-Fi »

Android」カテゴリの記事

Beaglebone Black」カテゴリの記事

「H/W」カテゴリの記事

コメント

こちらのブログ参考にさせていただいてます。
BeagleBone Greenを購入しAndroidを導入したいためこちらの記事を参考にTIのサイトで下記コードでlinux(Ubuntu 12)にandroidのprebuildをしようとしたのですが、Package 'uboot-mkimage' has no installation candidate等の権限がないエラーが出ます。なお 雑誌「Linuxガジェット BeagleBoneBlackでIO」の59ページ以降にも同様の記事がありますが説明不足でできていません。予想原因や他の方法、linux上でなくWindows上でダウンロードからビルドしimgファイルをSDに書く方法などありましたらお知らせいただきたくお願いいたします。
$ sudo apt-get install git-core 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 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 \
minicom tftpd uboot-mkimage expect libgl1-mesa-dri
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

投稿: MT | 2016.04.23 14:08

コメント、ありがとうございます。
apt-get でエラーが出るとなると Ubuntu の問題ですよね。。
sudo apt-get update
sudo apt-get upgrade
してからでも同じエラーが出ますでしょうか?
出るようでしたら、対策方法がわからないです。。私の環境では sudo apt-get install uboot-mkimage は問題なく実行できています。
Windows だけでビルドする方法はないと思います。Windows 上で VMware とか VirtualPC とかで Ubuntu を起動してビルドするしかないと思います。
ソースを改変する必要がなければ、
http://downloads.ti.com/sitara_android/esd/TI_Android_DevKit/TI_Android_JB_4_2_2_DevKit_4_1_1/index_FDS.html
の左下のBeagleBone Blackのところのイメージなど、既にビルドされているのを焼いてもらえばいいと思いますが。

投稿: Salt | 2016.04.27 22:28

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/20208/58078526

この記事へのトラックバック一覧です: BeagleBone Black に Android を入れた:

« BeagleBone Black に Ubuntu 13.04 を入れた | トップページ | BeagleBone Black で Wi-Fi »