如何使用 CCache 进行 Cocos2d-x 编译加速
2014-06-20 22:47
465 查看
CCache是C/C++的编译器缓存。当相同的编译被再次编译时,进行检测并通过之前编译的缓存进行编译加速。所以我们可以通过这种方法给Cocos2d-x Android的编译加速。使用这种方法,在i7
CPU的Macbook Pro Retina上编译,我们的Cocos2d-x Android工程编译时间可以从10分钟减少到30秒!!
注意:以下操作仅对Mac OS X有效。
我们使用homebrew:
或者通过源码安装:
注意:默认的安装路径是 /usr/local/bin,我们需要拷贝ccache到/usr/bin/,不然ndk-build会找不到并报错
如果终端报错说找不到autoheader,这说明我们需要先安装automake:
但是,如果如果报错是说找不到brew,我们就必须先安装brew:
确保ccache的路径可以被$PATH识别,运行命令:
如果你看到帮助信息,恭喜你,安装成功了!
我们必须先设置以下环境变量来使用ccache:
运行命令行:
这个命令将缓存大小设置为10G。当然,如果你的硬盘有足够的空间,你也可以将此设置为50G。
然后,我们跳转到NDK目录,如果你忘了这个路径,你可以使用以下命令来查看:
以下是我的输出结果:
所以,我的NDK_ROOT是:
打开文件:$NDK_ROOT/build/core/default-build-commands.mk
找到以下章节并加入ccache,如下:
选择cocos2d-x根目录,运行:
新建一个终端窗口,运行:
这个命令会打印出ccache状态,如下:
如果缓存的高速缓存命中(cache hit)和缓存大小(cache size)均为0,这就表示ccache没有运行,我们必须从新检查配置。
配置Xcode(5.1)的ccache环境有点麻烦。我确实能调用ccache,但貌似没有增加编译速度。如果你有好的方法解决这个问题,请到github上为本篇教程提交pr!不过我们还是看看设置方法:
首先,我们添加2个自定义宏(user-defined macros)到cocos2d_libs的编译选项中:
然后,我们需要在$(COCOS2dX_ROOT)/tools/路径下创建名为xcode_ccache_wrapper的脚本:
设置完成,我们就可以快乐的在Xcode中编译了!
打开ccache.log可以查看cache工作状态。
但问题是,添加cache后,我mbp的Xcocde依旧没有提升编译速度。有可能是我使用的脚本不正确,所以,如果你看到本章节,并知道我的问题出在哪,请到github中提交pr,修正我的错误,并造福广发开发者哦!!
来源网址:https://github.com/chukong/cocos-docs/blob/master/manual/framework/native/v3/ccache-speed-up/zh.md
CPU的Macbook Pro Retina上编译,我们的Cocos2d-x Android工程编译时间可以从10分钟减少到30秒!!
注意:以下操作仅对Mac OS X有效。
安装
我们使用homebrew:如果终端报错说找不到autoheader,这说明我们需要先安装automake:
在android上配置编译环境
我们必须先设置以下环境变量来使用ccache:然后,我们跳转到NDK目录,如果你忘了这个路径,你可以使用以下命令来查看:
找到以下章节并加入ccache,如下:
编译cocos2d-x游戏
选择cocos2d-x根目录,运行:
在Xcode中部署
配置Xcode(5.1)的ccache环境有点麻烦。我确实能调用ccache,但貌似没有增加编译速度。如果你有好的方法解决这个问题,请到github上为本篇教程提交pr!不过我们还是看看设置方法:首先,我们添加2个自定义宏(user-defined macros)到cocos2d_libs的编译选项中:
打开ccache.log可以查看cache工作状态。
但问题是,添加cache后,我mbp的Xcocde依旧没有提升编译速度。有可能是我使用的脚本不正确,所以,如果你看到本章节,并知道我的问题出在哪,请到github中提交pr,修正我的错误,并造福广发开发者哦!!
来源网址:https://github.com/chukong/cocos-docs/blob/master/manual/framework/native/v3/ccache-speed-up/zh.md
相关文章推荐
- 如何使用 CCache 进行 Cocos2d-x 编译加速
- 如何使用 CCache 进行 Cocos2d-x 编译加速
- 如何使用 CCache 进行 cocos2d-x 编译加速
- 怎样使用 CCache 进行 cocos2d-x 编译加速
- 如何加速使用预编译库的cocos2d-x编译 + cocos2dx历史版本下载
- 如何用ccache加速cocos2d-x android版本的编译
- 如何在64位操作系统上使用masm进行编译链接和运行
- 如何使用ccache加快编译
- 使用ccache 加速编译cocos2dx项目 android NDK
- 如何使用ANT在命令行进行编译和测试
- 在linux下如何使用Makefile对fortran程序进行编译
- cocos2d-x 如何使用CCProgressTimer作为血条,实现跟随怪物进行移动,自动掉血,然后死亡。
- 如何在java中使用别人提供的jar包进行导入,编译,运行
- Cocos2d-x 3.x:如何进行合理的内存分配(使用AutoreleasePool 来合理的管理内存)
- 使用ccache大幅度加速gcc编译速度
- wince如何使用批处理文件进行驱动编译
- 如何使用命令行编译运行cocos2d-x的android工程
- Cmake编译OpenCV和如何在VS工程中配置来使用编译后的OpenCV进行跟踪调试问题
- C#与.NET程序员面试宝典 2.2.2 面试题9:如何使用实时编译进行代码优化
- 通过使用ccache加速android 源码编译的配置