Ubuntu14.04下载编译Android6.0内核源码

通过上一篇Ubuntu14.04下载编译Android6.0源码我们已经下载完了Android SDK的所有源代码,但是这其中不包括其对应的Linux内核的源代码。不同的硬件需要下载不同的内核代码,在此https://source.android.com/source/building-kernels可找到对应的关系。
目前我是先下载了Android模拟器对应的Android内核源码,下面介绍具体步骤。

//先按上篇文章设置好相关代\理。
cd ~/android-6.0.1_r46
mkdir kernel
cd kernel
git clone https://android.googlesource.com/kernel/goldfish.git

下载完成后切换到当前模拟器所用的内核代码分支3.4:

git branch -a  //查看所有分支
git checkout -b android-goldfish-3.4 remotes/origin/android-goldfish-3.4

之后就可以进行编译了:

cd ~/android-6.0.1_r46/kernel/goldfish
export ARCH=arm
export CROSS_COMPILE=arm-eabi-  //配置交叉编译工具
export PATH=$PATH:~/android-6.0.1_r46/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin
make goldfish_defconfig

make

编译完成后会提示内核镜像路径:

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

可以使用Android模拟器来测试编译出的内核文件

//在后台启动Android模拟器,好让终端可以继续使用。
source build/envsetup.sh
lunch
emulator -kernel ./kernel/goldfish/arch/arm/boot/zImage &

编译.img文件时可使用下面的方式来编出此文件

export TARGET_PREBUILT_KERNEL=$your_kernel_path/arch/arm/boot/zImage
make bootimage

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...