当前位置: 首页 > 知识库问答 >
问题:

将游戏更新为cocos2d-x v2时出现异常。0

刘和玉
2023-03-14

我正在做linux eclipse。

我已经按照维基提供的步骤更新了代码。

1º我创建了一个新的eclipse项目。2º我运行hello world,它运行正常。3:我把旧代码放在类和资源上。4ºI更新appdelegate。cpp。h、 还有jni/Android。新文件的mk。5º编译正确。

6°从日食中笑我得到以下例外:

trying to load lib /data/data/org.pipero.game/lib/libgame.so
Fatal signal 11.

有点不对劲,但我不知道发生了什么。

同样的代码适用于xcode项目
我没有在Java_org_cococos2dx_lib_cocos2dx renderer_nativeInit上获得CCLOG消息con Appdelegate构造函数。都不是。

LOGCAT:

---- LOG TEST RUNNING HELLO WORLD ------
06-13 18:29:07.189: D/dalvikvm(11613): Trying to load lib /data/data/pipero.corporation.nyan/lib/libgame.so 0x40f87190
06-13 18:29:07.199: D/dalvikvm(11613): Added shared lib /data/data/pipero.corporation.nyan/lib/libgame.so 0x40f87190
06-13 18:29:07.269: W/apk path(11613): /data/app/pipero.corporation.nyan-2.apk
06-13 18:29:07.409: D/SurfaceView(11613): pckname = pipero.corporation.nyan
06-13 18:29:07.809: D/libEGL(11613): loaded /system/lib/egl/libGLES_android.so
06-13 18:29:07.859: D/libEGL(11613): loaded /system/lib/egl/libEGL_mali.so
06-13 18:29:07.919: D/libEGL(11613): loaded /system/lib/egl/libGLESv1_CM_mali.so
06-13 18:29:07.929: D/libEGL(11613): loaded /system/lib/egl/libGLESv2_mali.so
------------------------------------- OK -------------------------------

---- LOG TEST RUNNING TEST changing android files to mine ------
06-13 18:36:31.789: D/dalvikvm(12046): Trying to load lib /data/data/pipero.corporation.nyan/lib/libgame.so 0x40f8de18
06-13 18:36:31.799: A/libc(12046): Fatal signal 11 (SIGSEGV) at 0x00000030 (code=1)
--------------------------------------- FAIL --------------------------

我曾尝试在另一款平板电脑(Android3.2)上编译,我也遇到了同样的问题。这次日志是:

所以,信号11SEGV_MAPERR,我假设这是编译的问题,库被找到了,但是程序不能正确加载它。JNI不执行jni_Onload。

一些想法???

提前感谢。

共有2个答案

莫翰藻
2023-03-14

在你的项目文件夹中,仔细检查lib文件是否在你的android libs文件夹中。

[cocos2d-x root]/[game_name]/android/libs

应该有一个名为libgame的文件。所以在里面。

如果编译正常,则。所以应该生成文件。编译时,我发现在eclipse中“刷新”项目很有帮助,这样eclipse就可以重新扫描目录,以便将任何新文件/修改打包到APK文件中进行部署。

我相信在eclipse中可以启用一个选项来自动检测文件系统的更改,但我不确定该选项在哪里。

阙星渊
2023-03-14

当你收到致命信号11时,也许你想看看这个。这是一个分段故障,访问未分配的内存位置,通常是由于编程错误。

祝你好运,但由于一些人对新版本没有问题,最有可能的情况是,你有一个编程错误,而旧版本没有给你带来问题。

 类似资料:
  • 我们正在使用QAF进行功能测试自动化。我们最近从3.3升级了selenium版本。1至3.4。0,它在某些位置开始出现以下错误。 我的观察是,如果我们没有driver.findBy(BY)声明,它工作得很好。为了测试目的,我在一个地方尝试了driver.findBy(String)而不是driver.findBy(BY),它工作得很好。但是我不知道有多少地方团队使用了上述方法。 下面是重现错误的测

  • 我正在做一个多人游戏。每个客户端都有一个在共享环境中移动的字符。 我使用socket.io创建rooms,使用peer.js创建客户端之间的点对点连接。 我正在尝试做的是使每个客户端能够更新他的地图中其他玩家的角色的位置。 为此,每个客户端应该拥有其他玩家的键盘光标(箭头键)的状态,以便他能够用行走动画移动他们对应的角色。 p2p:我正在考虑在客户端之间创建双工流,这样每个客户端将拥有其他玩家的键

  • 使用Cocos2D, 模仿QQ连连看写的一个连连看游戏Demo,有声音效果。 [Code4App.com]

  • 问题内容: 我正在使用struts 2,并且正在尝试使用fop从xml和xsl创建pdf文件。我根据这两个网址http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/examples/embedding/java/embedding/ExampleXML2PDF.java?view=markup和http://justcode.wordpress开发了

  • 我正在尝试使用JAXB从对象构建XML。 但是我错过了一些东西,因为我得到了一个例外: javax.xml.bind.MarshalExc0019-具有链接异常:[com.sun.istack.internal.SAXException2:类雇员及其任何超级类在此上下文中都是已知的。javax.xml.bind.JAXBExc0019:类雇员及其任何超级类在此上下文中都是已知的。]