原创作品,转载请注明原作者及地址!
by 飞鸿惊雪
http://blog.csdn.net/niyufeng
Android准备往OpenWrt上移植
这两天全力编译android,cpu 4个线程全开,磁盘大吞吐的存取,导致温度过高,编译中间笔记本保护性质的自动休眠关机。
不说废话,进入正题。
友善的mini6410自带的是android-2.3.4,而tiny210自带android-2.3.1(以及Android-4.0.3),我想把他们统一到android-2.3.7_r1,然后放到OpenWrt框架下。
之前nbd维护的android-1.6 for OpenWrt早就因为google android服务器的更换而不能够正常运行了。而nbd现在维护的是android 4.0,但是据他自己说只有dalvik可能能够运行,但是我没有编译成功。
总之,在openwrt下的qpe已经完成的情况下,我想把android拉到openwrt下。
目前进展:
ok 0 安装beyond compare,或使用diff脚本,测试、对比,得到files-patches;
ok 1 编译tiny210自带的android-2.3.1源代码;
ok 2 编译原始android-2.3.1的goldfish;
ok 3 编译原始android-2.3.1 + tiny210的files-patches补丁;
4 精简2.3.1补丁,去除不需要的补丁,再往2.3.7上移植;
5 分析android和nbd的源代码,把2.3.7移植到openwrt框架上;
升级路线:
|--------------------------------------------------------
| (低原始) --\
| =>得到 (低差异) --\
| (低已好) --/ =>结合 得到 (高版本)
| (高原始) --/
|--------------------------------------------------------
原则只添不减(除非不可共存,相冲突)!
android的移植按如下流程:
1 android linux内核的普通驱动移植,让内核可以在目标平台上运行起来。
2 正确挂载文件系统:确保内核启动参数,和android源代码system/core/rootdir目录下的init.rc中的文件系统挂载正确。
3 调试控制台,让内核启动参数中的c