硬盘空间需要在50G以上,最好100g
系统:ubuntu14.04
交叉工具链:arm-linux-gcc-4.5.1-v6-vfp-20120301
安装 Java 开发环境
$ sudo apt-get install openjdk--jdk openjdk--jre
首先准备android-5.0.2-fs-20150325.tar.gz 文件
解压
$ tar xzf android-5.0.-fs-.tar.gz
在 Ubuntu 下的解压内核并编译,命令为:
$ tar xzf linux-3.0.-.tgz
$ cd linux-3.0./
$ cp tiny4412_android_defconfig .config
$ make zImage
产生zImage文件在/arch/arm/boot目录下
编译 Android 系统
进入上述解压得到的 android-5.0.2, 执行以下命令(注意: “.”号后有一个空格):
$ . setenv
再执行“lunch”命令, 输入“full_tiny4412-eng”前的数字标号, 如下所示:
$ lunch
You're building on Linux
Lunch menu... pick a combo:
. aosp_arm-eng
. aosp_arm64-eng
. aosp_mips-eng
. aosp_mips64-eng
. aosp_x86-eng
. aosp_x86_64-eng
. full_tiny4412-userdebug
. full_tiny4412-eng
. aosp_mako-userdebug
. aosp_hammerhead-userdebug
. aosp_tilapia-userdebug
. aosp_grouper-userdebug
. aosp_deb-userdebug
. full_fugu-userdebug
. aosp_fugu-userdebug
. aosp_flo-userdebug
. aosp_shamu-userdebug
. aosp_manta-userdebug
. mini_emulator_mips-userdebug
. mini_emulator_x86_64-userdebug
. mini_emulator_arm64-userdebug
. m_e_arm-userdebug
. mini_emulator_x86-userdebug
Which would you like? [aosp_arm-eng]
接着执行“make”命令开始编译,也可以在 make 后加上“-j”参数利用 CPU 的多核加快编译
速度,比如在 4 核 CPU 上可以执行“make –j4”。
注意: 编译过程可能持续 4、 5 个小时。
最后,执行以下命令生成映象文件:
$./gen-img.sh
注意: 如果提示如下错误,要先编译 u-boot 以得到 mkimage 工具, 方法见后。
./gen-img.sh: line 31: mkimage: command not found
编译 u-boot 以得到 mkimage 工具的方法:
$ tar xzf uboot_tiny4412-.tgz
$ cd uboot_tiny4412/
$ make tiny4412_config
$ make
$ sudo cp tools/mkimage /usr/bin/
uboot_tiny4412-20130729.tgz在uboot工具中 最终在android-5.0.2目录下产生 android studio工程索引文件 android.ipr android.iml
系统镜像文件 system.img ramdisk-u.img userdata.img userdata-4g.img userdata-8g.img userdata-16g.img