Cocos2d-x 3.2编译生成Android程序出错的解决方案

在使用Cocos2d-x 3.2开发Android程序时,可能会遇到找不到Python命令或者Python环境问题。参照文章提供的解决方法,如通过配置系统环境变量指向Python安装路径来解决找不到Python命令的问题。完成环境变量配置后,可能需要注销并重新登录以使设置生效。最终,编译成功的apk位于runtimeandroid目录,而非publishandroid。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考 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中


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值