参考 http://blog.youkuaiyun.com/nokiaguy/article/details/38467301 文章的解决方法1
最近升级到Cocos2d-x 3.2正式版,iOS程序编译没任何问题,结果使用cocos compile -p android编译生成APK程序,结果悲剧了,出现以下错误。
Android NDK: Invalid APP_STL value: c++_static
Android NDK: Please use one of the following instead: system stlport_static stlport_static_hard stlport_shared stlport_shared_hard gnustl_static gnustl_shared gabi++_static gabi++_shared libc++_static libc++_shared none
make: Entering directory `/game/physics_engine/proj.android'
/sdk/ndk/android-ndk-r9c/build/core/add-application.mk:274: *** Android NDK: Aborting . Stop.
make: Leaving directory `/game/physics_engine/proj.android'
Error running command, return code: 2
很显然,这个错误是使用了不正确的STL Library,解决方案有如下两个。
方案1:临时方案
修改Application.mk文件,将原来的前4行替换为如下的内容。然后替换就ok了
原来的内容如下:
APP_STL := c++_static
NDK_TOOLCHAIN_VERSION=clang
APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char
APP_LDFLAGS := -latomic
替换后的内容如下:
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -DCOCOS2D_DEBUG=1 -std=c++11 -Wno-literal-suffix -fsigned-char
遇到的问题2 找不到python命令
后来试过有时候提示Python坏掉了
python安装的时候使用默认安装方式即可,但是安装完毕后我们需要配置环境变量
在我的电脑(右键)->属性->高级系统设置->高级选项卡->环境变量->系统变量 中找到Path 变量,并在其值中增加 指向Python的环境变量。格式为 [Python安装路径]; 例如我安装在C盘 我的环境变量就新增为 C:\Python27;
重新打开ide都可以了,如果不行再配置完毕后记得注销再重新登陆系统环境变量才会生效
遇到的问题3:
再build会发现java那边的android缺少lib报错了,
在cocos2dx中的库 找lib 把\frameworks\runtime-src\proj.android\src\org\cocos2dx\lib 复制过去就可以了
最后生成出来的apk是在runtime\android,而不是在publish\android中