我正在尝试为我的Nexus 7(内核版本3.1.10,android 4.1.2,rooted和unlocked)构建一个自定义内核,但是我在加载内核时遇到了麻烦。我已经在几个方面遵循了我在网上找到的所有步骤,但无法加载内核。我怀疑问题出在将内核重新打包到boot.img中的某个地方。以下是我正在使用的步骤:
出于测试目的,我没有对menuconfig等中的内核配置进行任何更改,因此.config文件与从设备关闭时完全相同。我已经改变了Makefile中的外向以匹配现有的内核。
重建内核:
拆开boot.img
重新包装boot.img
cat boot.img-base
-o newboot.img 然后,在fastboot中重新启动一次......
我的设备刚刚挂起。我在我的Wifi-only Motorola Xoom上尝试了相同的过程,它只是启动循环。我缺少一步吗?我需要更改ramdisk中的某些内容吗?感谢您的帮助或您的任何见解。
答案 0 :(得分:1)
我也用头撞了一下墙几天。这里有一些提示帮助我启动并运行内核:
使用split_bootimg解压缩原始boot.img。您可以在此处获取:http://www.enck.org/tools.html
运行make时,设置SUBARCH = arm以及ARCH
请务必使用android源码中的工具链。如果您没有,可以在此处获取:https://android.googlesource.com/platform/prebuilt/
如果您发现自己陷入了循环启动动画,请确保您拥有最新的内核稳定版本。
进一步到最后一点,我尝试使用提交哈希方法(使用git log内核获取预构建内核的最后一次提交)来获取内核源代码,但发现它在编译后总是挂起。
最后我选择使用最新的内核源代码(我选择了mr1分支),重新打包的boot.img第一次使用我的4.1.2 Android版本。
希望其中一些有帮助!