编译对应Android7.0的内核

前期准备:成功下载和编译Android7.0源码。linux中的fq实现(我之前的博客有),一些资源的下载要用,注意git clone一些谷歌的资源时前不要忘记配置DaiLi。

e.g我的配置():

export https_proxy="http://127.0.0.1:8123/"

export http_proxy="http://127.0.0.1:8123/"

在Android源码目录下创建内核目录

~/testandroid7$ mkidr kernel

~/testandroid7$ cd kernel/

 git clone https://android.googlesource.com/kernel/goldfish.git  (需要fq)

完成后会有一个goldfish目录,进入空文件,只有一个.git,查看其所有分支。

编译对应Android7.0的内核_第1张图片

编译对应Android7.0的内核_第2张图片


下载arm-linux交叉工具链


$mkdir ~/android-toolchain

$cd ~/android-toolchain

$git clone https://android.googlesource.com/platform/prebuilt 

然后将此路径 /home/xykj/android-toolchain/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin加入到环境变量中

开始编译内核:

 export ARCH=arm
 export SUBARCH=arm
 export CROSS_COMPILE=arm-eabi-
 export PATH=WORKING_DIRECTORY/prebuilts/gcc/darwin-x86/arm/arm-eabi-4.8/bin:$PATH
 make goldfish_armv7_defconfig
 make -j4

期间可能会出一些问题大都是环境配置的问题。

我遇到一个问题就是arm-linux-gcc 命令未找到。

参考https://blog.csdn.net/ragnaro/article/details/79143914这个网址解决的。最后编译成功,如下图。

编译对应Android7.0的内核_第3张图片

运行新编译的内核:

emulator -kernel /home/xykj/testandroid7/kernel/goldfish/arch/arm/boot/zImage

查看系统信息。

左边是新编内核                                                        右边是缺省内核,即源码中自带的内核镜像

编译对应Android7.0的内核_第4张图片

至此对应Android7.0的Android内核就成功编译了。


你可能感兴趣的:(Linux,Android,Ubuntu)