mtk android 编译环境,MTK android 快速编译方法.docx

博客介绍了MTK Android快速编译方法。一是移除modules_to_check,修改编译系统不编译未用模块,可降低编译时间16% - 18%,还节省磁盘空间;二是开启android ccache,设置合适cache大小,开启后可降低约25% - 30%使用gcc的编译时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MTK android 快速编译方法

[FAQ10625] 提升Android编译速度Platform:MT6572MT6582MT6588MT6589...MT6572MT6582MT6588MT6589MT6592MT6595MT6571MT6582/92+MT6290Branch:GB3JB2JB3JB5...GB3JB2JB3JB5JB9GB5JB7FAQ Content[DESCRIPTION]Android codebase都很大,编译一次都需要花很多时间,如果是preloader/lk/bootimage还好,但是Android的话都是非常久。实际上这个编译时间还是可以进一步缩短!?[KEYWORD]ccache编译时间提升降低?[SOLUTION]1. 移除modules_to_check(1). Android默认是所有模块都会编译的(不管需不需要),这个有些冗余,可以通过修改编译系统不编译哪些没有用到的模块(2). 修改方法:alps/build/core/main.mkfiles: prebuilt \? $(modules_to_install) \? $(modules_to_check) \? $(INSTALLED_ANDROID_INFO_TXT_TARGET)修改为:files: prebuilt \? $(modules_to_install) \? $(INSTALLED_ANDROID_INFO_TXT_TARGET)(3). 如果是ubi nand文件系统的项目(比如72 nand项目),还需要在alps/build/core/Makefile中:$(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTFS) $(MKBOOTIMG) $(MINIGZIP) \??$(INSTALLED_RAMDISK_TARGET) \??$(INSTALLED_BOOTIMAGE_TARGET) \??$(recovery_binary) \??$(recovery_initrc) $(recovery_kernel) \??$(INSTALLED_2NDBOOTLOADER_TARGET) \??$(recovery_build_prop) $(recovery_resource_deps) \??$(recovery_fstab) \??$(recovery_gzip) $(recovery_sec_ko) \??$(RECOVERY_INSTALL_OTA_KEYS)的前面添加:ifeq ($(TARGET_USERIMAGES_USE_UBIFS),true)$(INSTALLED_RECOVERYIMAGE_TARGET): $(recovery_ubiformat)endif否则会编译失败!(4). 修改后Android编译时间降低16%~18%(数据仅供参考)(5). 此种方法google已在4.3版本默认应用了。(6). 仅对new有效果,但是由于没有编译没有用到的模块,不仅节省时间还节省磁盘空间(节省out目录下的中间文件)。?2. 开启android ccache(1). ccache是google默认就存放在codebase的工具,对于ccache的功能可以到网络搜寻资料。(2). 设置cache大小(这一步一定要做!!),一个codebase需要大约5G的空间,如果你的编译环境有5个codebase在使用,那么需要25G的空间。设置小了还会引起编译时间延长!!??? [1].GB版本:prebuilt/linux-x86/ccache/ccache -M 25G??? [2].JB版本:prebuilts/misc/linux-x86/ccache/ccache -M 25G(3).?开启的方法:??? [1].命令行增加USE_CCACHE=1即可:./mk -o=USE_CCACHE=1 n。如果是user版本开启ccahce的话,可以这样:./mk -o=USE_CCACHE=1,TARGET_BUILD_VARIANT=user n。??? [2].建议:添加到环境变量(其他方式亦可):修改alps/makeMtk,在#!/usr/bin/perl之后新建一行,填写$ENV{"USE_CCACHE"} = 1;(4).?第1次编译会花多一点时间建立cache,之后即可享受ccache带来的好处,降低所有使用gcc的编译时间,大约25%~30%。??? [1].可以通过ccache -s查看cache信息,如果满了可以用ccache -C清除所有。在满了状态下编译新codebase,将会旧的那个清除,这会降低效率,所以cache一定要设置正确!(6). 对mm/new/rem

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值