如何在现代环境中构建 android 内核

Posted

技术标签:

【中文标题】如何在现代环境中构建 android 内核【英文标题】:How can i build android kernel with modern environment 【发布时间】:2021-06-23 05:41:20 【问题描述】:

我遵循了几个步骤来使用 Repo 和 build/build.sh 编译 android 内核。但我无法成功获取 bzImage 或 zImage 以使用模拟器进行模拟。

repo init -u https://android.googlesource.com/kernel/manifest -b android-msm-wahoo-4.4-android10-qpr3 回购同步 build/build.sh

并且在来自 Android 网站 (https://source.android.com/setup/build/building-kernels) 的 Building Android Kernel 页面的末尾有一个名为“Building a Boot Image”的部分,但我也找不到任何地方可以按顺序下载 GKI 启动映像创建 gki-ramdisk.lz4 并且能够按照说明进行操作。

BUILD_BOOT_IMG=1 SKIP_VENDOR_BOOT=1 KERNEL_BINARY=bzImage GKI_RAMDISK_PREBUILT_BINARY=gki-ramdisk.lz4 BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh

【问题讨论】:

【参考方案1】:

最早的GKI 内核是基于 5.4 的,从 Android 11 开始可用:android11-5.4。因此,您可能很难使用基于 4.4 的内核。

话虽如此,要根据文档在ci.android.com 上找到ramdisk-recovery.img,请转到特定于发布的分支,例如android11-gsi,您将在 aosp_arm64 目标的工件中找到该文件。

【讨论】:

以上是关于如何在现代环境中构建 android 内核的主要内容,如果未能解决你的问题,请参考以下文章

2023年Android现代开发

如何使用预构建的内核输出目录构建Linux内核模块?

如何使用预构建的内核输出目录构建 linux 内核模块?

一文看透浏览器架构

构建调试Linux内核网络代码的环境MenuOS系统

如何编译android kernel