下了一整套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-eng
target 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=270336
error: /home/axlecho/cm/out/target/product/jasmine/boot.img too large (8009728 > [3784704 - 270336])
make: *** [/home/axlecho/cm/out/target/product/jasmine/boot.img] 错误 1
make: *** 正在删除文件“/home/axlecho/cm/out/target/product/jasmine/boot.img”
2015-11-4
注意:
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 := 0x00A3B000
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x00EAB800
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x451DA930
BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x1FEDCAB4
BOARD_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.stamp
mkdir -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" bison
mkdir -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" bison
Gyp 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_exception
OSError: [Errno 2] No such file or directory
raise child_exception
OSError: [Errno 2] No such file or directory
make: *** [/home/axlecho/cm/out/target/product/generic/obj/GYP/shared_intermediates/blink/core/CSSGrammar.cpp] 错误 1
make: *** 正在等待未完成的任务....
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的)