今回は以下のURLを参考にして Android のビルドと kernel のビルドを行いました。
Android Source File 取得 †以下の手順でrepo init, repo sync, makeを行います。 $mkdir omap3droid $cd omap3droid $repo init -u git://labs.embinux.org/repo/android/platform/omap3manifest.git $repo sync Android for beagleboard では Toolchain の入れ替えを行いましたが、 Android ビルド †$cd ~/omap3droid $source build/envsetup.sh $choosecombo 1 1 beagle eng $make http://labs.embinux.org/index.php/Android_For_OMAP3_with_Gstreamer_Integration これでビルドを行うと target Strip: libskiagl (out/target/product/beagle/obj/lib/libskiagl.so) target asm: libdvm <= dalvik/vm/arch/arm/CallOldABI.S target asm: libdvm <= dalvik/vm/arch/arm/CallEABI.S dalvik/vm/arch/arm/CallEABI.S: Assembler messages: dalvik/vm/arch/arm/CallEABI.S:157: Warning: s suffix on comparison instruction is deprecated make: *** `out/target/product/beagle/obj/SHARED_LIBRARIES/libdvm_intermediates/mterp/out/InterpAsm-armv7-a.o' に必要なターゲット `dalvik/vm/mterp/out/InterpAsm-armv7-a.S' を make するルールがありません. 中止. このようなエラーがでました。 $ cd omap3droid/dalvik/vm/mterp $ ./rebuild.sh ただ、私が repo sync した際には commit されているはずの rebuild.sh が古く config-armv7-a が存在しませんでしたので $ cd ~/omap3droid/frameworks/base/data/sounds $ cp AudioPackage2.mk Android.mk $ mm out/target/product/beagle/system/media/audio以下にファイルが作成されます。 Android RootFile Systemの設定 †ビルド完了後、root file systemを一箇所に集めます。 $ cd ~/omap3droid/out/target/product/beagle $ mkdir RFS $ cp -a root/* RFS $ cp -a data/* RFS/data/ $ cp -a system/* RFS/system/ $ cd RFS $ sudo chown -R root.root * $ sudo chmod -R 777 data system
ifup eth0 setprop net.dns1 208.67.222.222 を追加します。
net.eth0.dns1=208.66.222.222 net.dns1=208.67.222.222 を追加します。 kernelビルド †デフォルトのビルドをそのまま行えば、omap3_beagle_android_defconfig の設定で kernel がビルドされます。 $ cd ~/omap3droid/kernel/kernel/arch/arm/configs $ cp omap3_beagle_android_defconfig ~/omap3droid/kernel/.config $ make menuconfig ここでUSB-etherのドライバを入れます。 -> DeviceDrivers -> Network device support (NETDEVICES[=y]) -> USB Network Adapters にありますので、チェックをいれます。 $ make CROSS_COMPILE=arm-eabi- ARCH=arm uImage これで ~/omap3droid/kernel/kernel/arch/arm/bootにuImageが作成されます。 SDイメージ作成 †注:今回はPanasonic製の2GBのSDカードを使用しました。 1st partision:FAT32 1.5GB 2nd partision:ext3 500MB (サイズは適宜変更してください)
$ cd ~/omap3droid/out/target/product/beagle/RFS $ cp -a * /media/{ext3-partision} キー配置 †デフォルトビルドのままのキー配置は BACK:ESCキー MENU:windowsキー HOME:HOMEキー です。 beagleboard Android 起動 †イメージを作成したSDカードをbeagleboradに挿入し電源を入れます。 OMAP3 beagleboard.org #setenv bootargs console=ttyS2,115200n8 noinitrd root=/dev/mmcblk0p2 video=omapfb.mode=dvi:1280x720MR-24@50 init=/init rootfstype=ext3 rw rootdelay=1 nohz=off androidboot.console=ttyS2 OMAP3 beagleboard.org # mmcinit OMAP3 beagleboard.org # fatload mmc 0 0x80300000 uImage OMAP3 beagleboard.org # bootm 0x80300000 これで、Androidまで起動します。
制限事項 †
# netcfg eth0 up # netcfg eth0 dhcp
|