Ubuntu 上下载编译Android的linux kernel源代码
1,下载kernel源码
使用Git工具下载,执行以下命令:
$ mkdir kernel
$ git clone https://android.googlesource.com/kernel/common.git
$ git clone https://android.googlesource.com/kernel/goldfish.git
$ git clone https://android.googlesource.com/kernel/msm.git
$ git clone https://android.googlesource.com/kernel/omap.git
$ git clone https://android.googlesource.com/kernel/samsung.git
$ git clone https://android.googlesource.com/kernel/tegra.git
下载要经过一段时间的等待。
下载完成后可以查看内核版本
$cd common
$git branch –a #查看该版本里面所有内核的版本
选择一个版本checkout,例如:android-2.6.29
$git checkout remotes/origin/archive/android-2.6.29
checkout 之后,就可以在common目录,
$ls –a #就可以该版本内核的目录。
2,编译内核代码
交叉编译工具链放在/Android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin
$export PATH=$PATH:~/Android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin #修改环境变量
$make ARCH=arm CROSS_COMPILE=arm-eabi- goldfish_defconfig #其中goldfish_defconfig为从/goldfish/arch/arm/config/文件夹下拷贝过来的配置文件
$make ARCH=arm CROSS_COMPILE=arm-eabi-
编译完成后显示为:
……
LD vmlinux
SYSMAP System.map
SYSMAP .tmp_System.map
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
AS arch/arm/boot/compressed/head.o
GZIP arch/arm/boot/compressed/piggy.gz
AS arch/arm/boot/compressed/piggy.o
CC arch/arm/boot/compressed/misc.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready

浙公网安备 33010602011771号