在Ubuntu 14.04上編譯android kernel也沒有遇到什麼很難的問題。主要分如下幾個步驟:
首先查看emulator的cpu型號: adb shell
root@generic:/ # cat /proc/cpuinfo
Processor :
ARMv7 Processor rev 0 (v7l)
BogoMIPS : 378.47
Features : swp half thumb fastmult vfp edsp neon vfpv3 tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc08
CPU revision : 0
Hardware : Goldfish
Revision : 0000
Serial : 0000000000000000
一、下載Android內核源代碼:
/data/data/Android$ mkdir kernel
/data/data/Android$ cd kernel
/data/data/Android/kernel/goldfish$ git branch -a
/data/data/Android/kernel/goldfish$ git checkout -b android-goldfish-3.4 remotes/origin/android-goldfish-3.4
二、設置環境變量:
/data/data/Android/kernel/goldfish$ export ARCH=arm
/data/data/Android/kernel/goldfish$ export SUBARCH=arm
/data/data/Android/kernel/goldfish$ export CROSS_COMPILE=arm-eabi-
三、將交叉編譯工具添加到PATH :
/data/data/Android/kernel/goldfish$ export PATH=$PATH:/data/data/Android/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin
四、修改 硬件配置文件goldfish_defconfig(注:arm v5則爲goldfish_defconfig, arm v7則爲goldfish_armv7_defconfig):
/data/data/Android/kernel/goldfish$
make goldfish_armv7_defconfig
五、執行編譯:
/data/data/Android/kernel/goldfish$ make
六、編譯成功:
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
注意:標紅的地方特別須要注意二者須要一致,不然會致使啓動模擬器時一直黑屏!