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

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

1.VS2012完成修改

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

cd C:ComputerScienceworkspace-cocosHelloWorldproj.android

python build_native.py

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

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

1.cocos new HelloWorld -p com.cocos2dx.org -l cpp -d C:ComputerScienceworkspace-cocos

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

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

其中app_android_root指向C:ComputerScienceworkspace-cocosHelloWorld

相关参数解释详见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:ComputerScienceworkspace-cocosFirstDemoproj.android

python build_native.py

clipboard[2]

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

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

clipboard[3]

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

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

cd C:ComputerScienceworkspace-cocosHelloWorldproj.android

python build_native.py

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

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

clipboard[4]

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

clipboard[5]

运行结果:

clipboard[6]

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

cd C:ComputerScienceworkspace-cocosHelloWorldproj.android

python build_native.py

clipboard[7]

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

clipboard[8]

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

原文地址:https://www.cnblogs.com/lzhitian/p/4432980.html