我从三星 OSRC 下载了安卓设备开源。
它由 Platform.tar.gz 和 Kernel.tar.gz 组成
它似乎与构建 AOSP 相关,找到了 mk 文件。
我很好奇它是否可以(直接或间接)用于为设备构建更新的 android 版本,以及我是否必须基于这些文件构建新内核。
谢谢你。
我从三星 OSRC 下载了安卓设备开源。
它由 Platform.tar.gz 和 Kernel.tar.gz 组成
它似乎与构建 AOSP 相关,找到了 mk 文件。
我很好奇它是否可以(直接或间接)用于为设备构建更新的 android 版本,以及我是否必须基于这些文件构建新内核。
谢谢你。
如果您想为更新的 Android 版本构建,则无需构建另一个内核。只需使用三星为您的设备提供的内核(或手机中的预构建内核)。
将设备移植到较新的 Android 版本时,您需要调整初始化配置(init.rc
产品配置中的文件位于device/<vendor>/<your_device>
),而不是init.rc
文件的内核特定部分。
您还需要将特定于硬件的供应商二进制文件添加到生成的闪存映像中。因此,您可以从您的设备中提取这些库。其中大部分位于 中/system/vendor/lib
,但也可能有一些库位于/system/lib
所有子目录中。
某些供应商二进制文件也可能无法在另一个软件堆栈中工作。可能的原因是不兼容的HAL接口和不兼容的库。这些情况的解决方案可能非常不同,应该单独评估。
如果您遇到此类问题,您可以查看CyanogenMod源以获得提示。在那里你可以找到很多端口。最佳查看位置是特定设备的产品配置。您还可以查看我关于此主题的另一个答案。