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

posted @ 2012-02-10 22:28  yangsw  阅读(366)  评论(0)    收藏  举报