AOSP编译常见问题
ant">这篇FAQ中集中列举了AOSP(KK及L版本)上常见的编译问题
[KEYWORD]
AOSP
编译错误
[SOLUTION]
1.单独编译kernel时提示如下错误:Can’t find default configuration “arch/ARM64/configs/xx_defconfig”
▪ 单独编译kernel时并不能正常吃TARGET_ARCH,实际传入的是空,而kernel-3.10默认build的arm64,因此对于MT6572/MT6582等32bit的平台,需要手动制定TARGET_ARCH为arm
▪ Build cmd应该输入make TARGET_ARCH=arm O=out [proj]_debug_defconfig
2. xx_defconfig和xx_debug_defconfig的差别
▪ 同一个项目的kernel配置文件有两个:
i. xx_defconfig for user版本
ii. Xx_debug_defconfig for eng和user debug版本
▪ 因为在alps/device/[Company]/[project]/full-[project].mk中有如下设定 (以此文件中的设定为准)
3. 完整build时报错:You are attempting to build with the incorrect version of java.
▪ 原因是没有安装正确的java版本或者设定正确的JDK路径。
▪ KK版本需要oracle JDK 1.6,而L版本需要open JDK 1.7,详细的编译环境说明请参考DCC的文档:android_Build_Environment_on_Ubuntu_12.04_64-bit_Installation_SOP.docx
▪ 如果JDK安装OK,也请检查是否有source mbldenv.sh设定正确的JDK路径,同样请参考DCC的文档:Android_Build_Environment_on_Ubuntu_12.04_64-bit_Installation_SOP.docx
4. 完整编译完成后发现Modem image没有被打包进system image
▪ 产生问题的原因: alps/vendor/mediatek/proprietary/custom/$(project)/modem/$(modem_proj)下缺少 Android.mk
▪ Solution:
- 执行cmd :alps/device/mediatek/build/build/tools /modemRenameCopy.pl [Modem Codebase Path] [Modem Project Makefile Name]
- 这条cmd会在[Modem Codebase Path]下生成temp_modem目录,这个目录中包含ALPS编译需要的Android.mk以及modem image
- 将temp_modem重命名为CUSTOM_MODEM宏定义的值,并copy 到alps/vendor/mediatek/proprietary/custom/$(project)/modem
- 开始ALPS的正常编译
- 如果out/target/product/[proj]/system/etc/firmware下有modem image则表示成功build modem
▪ 详细信息请参考ReleaseNote_for_MT6582_L0.MP2.xlsx中的Build_Configure_Modem_MOLY_LR9 sheet
挺好的,我顶
小编, 请教下
KK 有 AOSP 也有 ABS, 但 L 只有 AOSP
这样讲对吗 ?
Mark一下..........
看了 就支持下!
Android_Build_Environment_on_Ubuntu_12.04_64-bit_Installation_SOP.docx
这个有吗