这一节开始,我们开始编译BeagleBoard-xm相关的boot, Kernel 以及 android 4.0的代码`
1.RowboadTools取得
$ cd ~
$ curl http://rowboat.googlecode.com/files/RowboatTools.tar.gz > RowboatTools.tar.gz
$ tar -zxvf RowboatTools.tar.gz
2. 编译工具环境变量的设置
$ cd ~
$ export PATH=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin:~/mydroid/u-boot/tools:~/RowboatTools/signGP:$PATH
路径名相应改成自己的路径名
3.编译X-loader
$ cd ~/mydroid/x-loader
$ make CROSS_COMPILE=arm-eabi- distclean
$ make CROSS_COMPILE=arm-eabi- omap3beagle_config
$ make CROSS_COMPILE=arm-eabi-
$ signGP ./x-load.bin
$ mv x-load.bin.ift MLO
4.编译u-boot
$ cd ~/mydroid/u-boot
$ make CROSS_COMPILE=arm-eabi- distclean
$ make CROSS_COMPILE=arm-eabi- omap3_beagle_config
$ make CROSS_COMPILE=arm-eabi-
5.编译Kernel
$ cd ~/mydroid/kernel
$ make ARCH=arm CROSS_COMPILE=arm-eabi- distclean
$ make ARCH=arm CROSS_COMPILE=arm-eabi- omap3_beagle_android_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-eabi- uImage
6.编译android 源码
$ cd <Android source path>
$ make TARGET_PRODUCT=beagleboard TARGET_BUILD_TYPE=release
在这里出现了一个错误
make: *** No rule to make target `out/target/product/beagleboard/kernel', needed by `out/target/product/beagleboard/boot.img'. Stop.
修改一下编译参数, 增加TARGET_NO_KERNEL=true
7.制作文件系统
$ cd <android source>/out/target/product/beagleboard
$ mkdir android_rootfs
$ cp -r root/* android_rootfs
$ cp -r system android_rootfs
$ sudo ../../../../build/tools/mktarball.sh ../../../host/linux-x86/bin/fs_get_stats android_rootfs . rootfs rootfs.tar.bz2