Ubuntu下Android内核源代码下载、编译、运行

来源:互联网 发布:大话西游手游多开软件 编辑:程序博客网 时间:2024/05/06 04:02

Android源代码默认不包含它所使用的Linux内核源代码


下载Android内核源代码

http://source.android.com/source/building-kernels.html

在这里可以看到所有的内核版本,使用git下载goldfish

$ git clone https://android.googlesource.com/kernel/goldfish.git
下载完之后执行 git branch -a 命令列出内核源码的所有分支

sleeper@sleeper-VirtualBox:~/kernel/goldfish$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/android-3.10
remotes/origin/android-goldfish-2.6.29
remotes/origin/android-goldfish-3.10
remotes/origin/android-goldfish-3.4
remotes/origin/linux-goldfish-3.0-wip
remotes/origin/master

使用命令 $  git checkout remotes/origin/android-goldfish-3.10 导出3.10分支的源码


编译Android内核源代码

1.将交叉编译工具所在的目录添加到环境变量PATH中

$  export PATH=$PATH:~/android4.0/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin

2.修改硬件配置文件goldfish_defconfig

$  sudo gedit ~/kernel/goldfish/Makefile# ARCH   ?= (SUBARCH)# CROSS_COMPILE ?=ARCH    ?= arm#体系结构为armCROSS_COMPILE     ?= arm-eabi-#交叉编译工具链前缀


3.执行make命令

Android 4.0用的arm版本是7

$  cd ~/kernel/goldfish$  make goldfish_armv7_defconfig$  make

如果arm版本是5则执行

$  cd ~/kernel/goldfish$  make goldfish_defconfig$  make

编译成功后,可以看到如下输出

OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready


运行Android模拟器

$  emulator -kernel ~/kernel/goldfish/arch/arm/boot/zImage &
查看kernel版本

$  cd ~/android4.0$  adb shell#  cd proc#  cat version


0 0
原创粉丝点击