提高安卓的编译速度 -- 使用ccache
2016-04-26 23:01
253 查看
开启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一定要设置正确! 编注:以上内容摘录自online,原文https://online.mediatek.com/Pages/FAQ.aspx?list=SW&l0=2&l1=3&l2=43&l3=6149 可以使用time命令对比使用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一定要设置正确! 编注:以上内容摘录自online,原文https://online.mediatek.com/Pages/FAQ.aspx?list=SW&l0=2&l1=3&l2=43&l3=6149 可以使用time命令对比使用ccache带来的时间成本缩减。提高效率,就是珍惜生命。
相关文章推荐
- 深入浅出 - Android系统移植与平台开发(八)- Android系统的本地服务
- C/C++宽窄字符串转换及其注意事项(一)
- jQuery笔记
- A query was run and no Result Maps were found for the Mapped Statement 'user.insertUser!selectKey'. It's likely that neither a Result Type nor a Result Map was specified.
- C++作业4
- 714 - Copying Books——[贪心、二分查找]
- 包、修饰符、内部类、匿名内部类(java基础知识十)
- 输出纸片折痕方向
- C++第4次试验——输出星号图
- Servlet课程0426(九)Servlet服务器端创建Cookie和客户端读取Cookie
- MyEclipse和tomcat结合编写jsp对于中文乱码的解决方法
- nopcommerce商城系统--如何编写一个插件
- 模拟WeChat
- 编程珠玑ch01
- UVa--11572 Unique Snowflakes(尺取法)
- DP 动态规划 Problem A 1001 最长子序列
- 读芥川龙之介小说
- Android带图片的Toast(自定义Toast)
- [IT业界] 网盘纷纷停止服务,下一个是谁?
- CMakeLists.txt杂记