[COCOS2DX]交叉编译实践+速度优化(vs2012修改win32代码+修改makefile+编译安卓项目包+部署安卓项目包到Eclipse+运行apk)

通过前面的部署过程可以知道cocos2dx的开发过程如下:

1.VS2012完成修改

2.因为指定了CPP文件位置,ndk可以通过jni方式完成C++文件的编译,运行以下命令完成proj.android的编译:

cd C:\ComputerScience\workspace-cocos\HelloWorld\proj.android

python build_native.py

3.将编译好的安卓项目导入到Eclipse进行编译和运行

但是上面这些步骤都是在官网工具包下面运行的,交叉编译一次耗时非常严重(把helloworld单个项目的win32平台开发、交叉编译安卓项目包、Eclipse编译安卓项目包、运行apk这几个步骤),下面开始以官网工具包作为基础探索优化速度的方案。

1.cocos new HelloWorld -p com.cocos2dx.org -l cpp -d C:\ComputerScience\workspace-cocos

2.查看build_naitive.py中存在以下脚本:

command = 'cocos compile -p android -s %s -m %s' % (app_android_root, build_mode) 

其中app_android_root指向C:\ComputerScience\workspace-cocos\HelloWorld

相关参数解释详见http://www.cocos2d-x.org/wiki/Cocos_compile

clipboard

修改该命令为:command = 'cocos compile -p android -j 4 -s %s -m %s' % (app_android_root, build_mode),添加了-j4多核编译以加快编译速度 

clipboard[1]

尝试编译安卓项目包:

cd C:\ComputerScience\workspace-cocos\FirstDemo\proj.android

python build_native.py

clipboard[2]

整个编译过程只需要7秒,快了很多了。

分析jni目录的android.mk文件:

clipboard[3]

可以发现该文件指定了需要进行编译的CPP文件。

2.接下来在vs2012修改运行时候显示的项目名,然后用

cd C:\ComputerScience\workspace-cocos\HelloWorld\proj.android

python build_native.py

编译安卓项目包在手机上运行。

2.1vs2012修改名称为“My HelloWorld”:

clipboard[4]

同时为了加快编译速度取消增量链接:

clipboard[5]

运行结果:

clipboard[6]

编译安卓项目包运行结果如下:

cd C:\ComputerScience\workspace-cocos\HelloWorld\proj.android

python build_native.py

clipboard[7]

在Eclipse编译运行在安卓手机:

clipboard[8]

至此整个交叉编译的过程就都理顺了。

posted @ 2015-04-16 18:59  何解一直犯相同错误?  阅读(866)  评论(0编辑  收藏  举报