Android Framework学习笔记 -- 移植cm的记录
来源:互联网 发布:linux原生游戏 编辑:程序博客网 时间:2024/05/22 14:12
下了一整套cm的代码,复制备份,看了cm的官方文档、老罗的博客和其他一些文章,感觉无从下手啊。突然想手里还有个mi3,刚好cm有mi3的适配,先搞搞mi3的吧。
2015-11-2
mi3不是cm支持多版本已经放弃
先复制bacon的工程,打算编译recovery
make -j4 otatools 成功 log:文件
mkvendor.sh 成功 log:文件
生成recovery失败
$ . build/tools/device/makerecoveries.sh cm_jasmine-engtarget Strip: recovery (/home/axlecho/cm/out/target/product/jasmine/obj/EXECUTABLES/recovery_intermediates/recovery)/home/axlecho/cm/out/target/product/jasmine/boot.img maxsize=3514368 blocksize=135168 total=8009728 reserve=270336error: /home/axlecho/cm/out/target/product/jasmine/boot.img too large (8009728 > [3784704 - 270336])make: *** [/home/axlecho/cm/out/target/product/jasmine/boot.img] 错误 1make: *** 正在删除文件“/home/axlecho/cm/out/target/product/jasmine/boot.img”
2015-11-4
注意:
- source ./build/envsetup.sh
- lunch
fix1:根据Recovery移植之高级小白教程——Recovery的编译修改Build/Core/definitions.mk:
# if [ "$total" -gt "$maxsize" ]; then \ # echo “error: $printname too large ($total > [$(2) - $reserve])”; \ # false; \ #el if [ "$total" -gt $((maxsize - 32768)) ]; then \ echo “WARNING: $printname approaching size limit ($total now; limit $maxsize)”; \ fi \
生成recovery成功,但没有生成文件 log:文件
fix2:根据Recovery移植之高级小白教程——Recovery的编译修改BoardConfig.mk: (根据现有文件大小
BOARD_BOOTIMAGE_PARTITION_SIZE := 0x00A3B000BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x00EAB800BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x451DA930BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x1FEDCAB4BOARD_FLASH_BLOCK_SIZE := 131072
生成成功 log:文件
刷入recovery失败,由于机器fastboot oem unlock失败
2015-11-5
刷入recovery成功,启动不了(意料之中- -|||)
捡了个recovery.fstab,重新编译,依旧启动不了(- -|||估计要在这一步卡很久)
2015-12-11
xda出来个cm rom,重新编译下,又有一堆错误
target StaticLib: skia_skia_library_gyp (/home/axlecho/cm/out/target/product/generic/obj/STATIC_LIBRARIES/skia_skia_library_gyp_intermediates/skia_skia_library_gyp.a)Gyp timestamp: /home/axlecho/cm/out/target/product/generic/obj/GYP/third_party_WebKit_Source_core_inspector_protocol_sources_gyp_intermediates/inspector_protocol_sources.stampmkdir -p /home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core; cd external/chromium_org/third_party/WebKit/Source/core; python ../build/scripts/rule_bison.py css/parser/CSSGrammar.y "/home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core" bisonmkdir -p /home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core; cd external/chromium_org/third_party/WebKit/Source/core; python ../build/scripts/rule_bison.py xml/XPathGrammar.y "/home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core" bisonGyp action: Generating IDL files for constructors on global objects for core_global_constructors_idls(/home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core/WindowCoreConstructors.idl)Traceback (most recent call last): File "../build/scripts/rule_bison.py", line 82, in <module>Traceback (most recent call last): File "../build/scripts/rule_bison.py", line 82, in <module> returnCode = subprocess.call([bisonExe, '-d', '-p', prefix, inputFile, '-o', outputCpp]) File "/usr/lib/python2.7/subprocess.py", line 522, in call returnCode = subprocess.call([bisonExe, '-d', '-p', prefix, inputFile, '-o', outputCpp]) File "/usr/lib/python2.7/subprocess.py", line 522, in call return Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 710, in __init__ return Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 710, in __init__ errread, errwrite) File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child errread, errwrite) File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child raise child_exceptionOSError: [Errno 2] No such file or directory raise child_exceptionOSError: [Errno 2] No such file or directorymake: *** [/home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core/CSSGrammar.cpp] 错误 1make: *** 正在等待未完成的任务....make: *** [/home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core/XPathGrammar.cpp] 错误 1#### make failed to build some targets (14:34 (mm:ss)) ####
fix1:环境的问题,根据官方更新系统环境Establishing a Build Environment
2015-12-12
make: *** 没有规则可以创建“/home/axlecho/cm/out/target/product/onyx/obj/EXECUTABLES/wpa_supplicant_intermediates/import_includes”需要的目标“/home/axlecho/cm/out/target/product/onyx/obj/SHARED_LIBRARIES/libwpa_qmi_eap_proxy_intermediates/export_includes”。 停止。make: *** 正在等待未完成的任务....#### make failed to build some targets (09:47 (mm:ss)) ####
fix1:根据xda论坛 DISCUSSION_WIP_ROM_6.0 CyanogenMOD 13 UNOFFICIAL
For the error about missing "libwpa_qmi_eap_proxy.so" i was able to fix it on my personal CM13 build for my oneplus one. you need to copy the file from "proprietary_vendor_oppo/msm8974-common/proprietary/lib" directory into the "proprietary_vendor_oneplus/bacon/proprietary/lib" directory and then recompile.
程序包android.support.annotation不存在
frameworks/testing/runner/src/main/java/android/support/test/internal/runner/ClassPathScanner.java:19: 错误: 程序包android.support.annotation不存在
fix1:根据xda论坛 CM12.1 Compilation Error (package doesn’t exist)
将./manifests/default.xml中的
<project path="frameworks/testing" name="platform/frameworks/testing" remote="aosp" revision="android-support-test" />
最后编译出了各种镜像,但没有压缩好多rom包,感觉就很奇怪,直接用fastboot刷能刷进去,但卡在了开机画面
2015-12-31
已废弃,cm已经出来了(可以搞一下n1708的)
- Android Framework学习笔记 -- 移植cm的记录
- 如何讲CM Android移植到你的设备?
- 如何讲CM Android移植到你的设备?
- Android Framework/base 学习记录
- Android Framework学习笔记 -- aidl的使用
- Android Framework学习记录 -- repo的强制更新
- 如何将CM android移植到你的设备(二)
- Android Framework学习记录1:Binder
- 关于android framework层 学习记录
- android学习笔记记录
- Android --学习笔记记录
- CDISC SDTM CM domain 学习笔记
- Android Framework学习笔记 -- Surface的绘制过程
- Android framework学习笔记 -- Google tracing的研究
- Android Framework学习笔记 -- Audio的播放流程
- Android Framework学习笔记 -- client与AudioFlinger的数据交换
- Android Framework学习笔记 -- Surface的绘制过程
- 学习Spring Framework的记录(1)
- 代码片段----指针的写法、父类指针指向子类
- javascript中数组遍历方法forEach,every,some的区别
- 51nod 1266 蚂蚁
- 从未思考过的问题
- 安卓模拟器failed to connect to /127.0.0.1
- Android Framework学习笔记 -- 移植cm的记录
- View 相关文章
- 前端笔记一——图片切换效果
- 7-14 打印选课学生名单(25 point(s))
- android studio 将oncreat()中的初始化的变量转化为全局变量的快捷键
- 网络编程
- 系统恢复技术
- 2.机器学习基础
- HTML5 nav导航标签使用