cocos2d-x 游戏在部份虚拟机上面闪退的原因

cocos2d-x 游戏在部份虚拟机上面闪退的原因,第1张

概述我们项目用cocos2d-x开发的游戏在部份模拟器上面会闪退,闪退时的log留下一句 Fatal signal 11 (SIGSEGV) at 0x00000000 (code=128)  //注意这里面的code是128,不是1。 闪退的地方是随机的,通常是在游戏初始化时用到cocos2d的渲染就会闪退,在真机上面不会,只在部份虚拟机上出现。 现在查明,是由于部份虚拟机是x86架构的,x86架构

我们项目用cocos2d-x开发的游戏在部份模拟器上面会闪退,闪退时的log留下一句

Fatal signal 11 (SIGSEGV) at 0x00000000 (code=128) //注意这里面的code是128,不是1。

闪退的地方是随机的,通常是在游戏初始化时用到cocos2d的渲染就会闪退,在真机上面不会,只在部份虚拟机上出现。


现在查明,是由于部份虚拟机是x86架构的,x86架构跑cocos2d的程序,在编译so文件时,需要将某个优化选项关掉。

具体的官方说明如下:

https://github.com/cocos2d/cocos2d-x/issues/8964


Hello,

Yes,you can check by extending APP_CPPFLAGS directive on your Application.mk file like
APP_CPPFLAGS := [other flags...] -U__SSE__

Probably there also must be some logic added to disable sse instructions for x86 ABI only,instead of all declared abis within APP_ABI directive.


意思就是在Application.mk文件的加上这个

APP_CPPFLAGS := [other flags...]-U__SSE__

重新ndk编译即可

这样的问题用Google一查就可以查出来,但用百度是查到你死都查不出来的。

诅咒百度,虽然自己的力量渺小,希望能为它的早日倒闭提供一份怨念。在信息化时代,还要阻止信息的流通,再一次诅咒闭关锁国的大清政府。

总结

以上是内存溢出为你收集整理的cocos2d-x 游戏在部份虚拟机上面闪退的原因全部内容,希望文章能够帮你解决cocos2d-x 游戏在部份虚拟机上面闪退的原因所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1081325.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存