【发布时间】:2013-07-04 14:21:05
【问题描述】:
我使用 cocos2d-x 和 eclipse 开发的游戏出现错误。
我收到错误“致命信号 4 (SIGILL) at 0x51947ffc (code=1)”
我不知道发生了什么,有任何堆栈跟踪我可以看到有关正在发生什么类型的错误的更多信息?
【问题讨论】:
-
您的程序正在崩溃,因为它试图执行非法指令。很可能是不正确的代码损坏了程序存储器的内容。找出发生了什么的唯一方法是在调试器中运行程序,逐步检查崩溃并检查程序的状态;通常这会让你找出崩溃的原因。这里真的没有其他人可以告诉你。
-
通常,当代码“落在地球的边缘”时,您会收到此错误 - 也就是说,当您跳转到实际上不是代码的内容(例如文本或数据)时。如果您运行的处理器的实际型号与您告诉编译器为其生成代码的型号之间的组合错误(例如,在没有 SSE3 的处理器上要求 SSE3 代码),您也可以得到它
-
我发现了问题。我在两个设备上运行我的游戏,一个 Xperia Mini pro 和一个 Galaxy Pocket Plus,当我在 Xperia 上运行游戏时,游戏运行良好,但是当我在 Galaxy Pocket 上运行游戏时,游戏崩溃了。问题是 Galaxy Pocket 只接受宽度或高度最大为 2048 像素的图像。由于我的图像比那个大,游戏在打开时崩溃。我通过将图像分成两幅图像解决了这个问题。