3

我有一个应用程序,在擦除我的系统并安装 Snow Leopard 后,我正试图重新开始工作。我从 Macports(现在是更高版本)安装了 Ruby 1.9,开发服务器启动得很好,但在第一次请求时就死了,只告诉我“非法指令”。我不知道是什么原因造成的,甚至不知道如何调试它。有没有人有任何想法?

4

2 回答 2

3

“非法指令”通常是来自 CPU 的错误消息,这意味着您尝试运行的某些二进制代码包含一条未在该特定 CPU 上实现的指令。

这可能有多种原因:

  • 该二进制文件是使用错误 CPU 的优化设置编译的。CPU 供应商一直在添加新指令,如果编译器针对比您拥有的 CPU 更新的 CPU 进行优化,它可能发出了您的 CPU 不理解的指令。
  • 编译器坏了。
  • 二进制文件已损坏。
  • 您正在编译的代码包含汇编代码或内在函数,其中包含您的 CPU 没有的指令。
于 2010-04-20T13:16:10.377 回答
1

知道了!恰当地说,该错误是由堆栈溢出引起的。

于 2010-04-21T22:09:54.610 回答