执行捆绑安装后,我运行'rails s'会遇到此错误。
$ rails s
/Users/XXXX/.rvm/gems/ruby-1.8.7-p352@r3/gems/json-1.5.3/ext/json/ext/json/ext/parser.bundle: [BUG] Segmentation fault
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin10.8.0]
Abort trap
非常感谢任何帮助。谢谢!
答案 0 :(得分:10)
这解决了我的问题。必须是针对错误版本的Ruby编译的一些扩展(在我的例子中)。希望它适合你!
如果你没有使用RVM,我发现这个命令可以卸载所有的gems:
答案 1 :(得分:4)
您的gemset未针对您正在使用的ruby版本进行编译。我发现这对我有用:
答案 2 :(得分:4)
您也可以尝试使用bundle exec rails s
答案 3 :(得分:0)
拔出json gem,看看是否有效。如果他们没有,那么我就输了。如果它们确实有效,那么你必须弄清楚为什么这个gem不适用于你的rails版本和你的ruby版本。
如果您查看Gemfile.lock,您将看到gems的“树视图”,嵌套的那些是由它们嵌套的依赖项所引入的。看看你是否正在使用这个json gem进行重要的事情,或者它是否可以使用。
当我使用rails 3.0.9并试图将其部署在只有3.0.3的主机上时,我遇到了一个非常类似的问题。事实证明,json gem是针对某些3.0.9版本的rails gem ...也许是ActiveSupport?我不记得那部分。
您能告诉我们您正在使用的导轨版本吗?
答案 4 :(得分:0)
新版本的Ruby 1.8.7导致了这个问题。不得不从过去降级到一个。