在OS 10.10.2上运行Rails服务器时出错

时间:2015-03-17 06:43:08

标签: ruby-on-rails ruby json

版本

Mac OS:OSX 10.10.2
Ruby:2.2.1p85
Rails:4.2.0

上下文

我在线访问www.installrails.com上的“安装Rails”教程。最后在遇到许多错误后完成了。我正在创建一个示例应用程序的最后一步,它运行正常,然后运行服务器。现在,我遇到了另一个错误。

错误

以下是我所看到的:

/Users/Work/.rvm/gems/ruby-2.2.1/gems/json-1.8.2/lib/json/ext/parser.bundle: [BUG] Segmentation fault at 0x00000000000418
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14]

-- Crash Report log information --------------------------------------------

See Crash Report log file under the one of following:

     * ~/Library/Logs/CrashReporter
     * /Library/Logs/CrashReporter
     * ~/Library/Logs/DiagnosticReports
     * /Library/Logs/DiagnosticReports
   for more details.

-- Control frame information -----------------------------------------------

*A lot of information listed here*

-- Ruby level backtrace information ----------------------------------------

*A lot of information listed here*

-- Machine register context ------------------------------------------------

*A lot of information listed here*

-- C level backtrace information -------------------------------------------


*A lot of information listed here*

-- Other runtime information -----------------------------------------------

* Loaded script: bin/rails

* Loaded features:

*And then a long list of files listed here*

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
Don't forget to include the above Crash Report log file.
For details: http://www.ruby-lang.org/bugreport.html

Abort trap: 6

帮助

现在,我想知道是否是导致问题的json gem?

如果您需要任何已移除的信息,请与我们联系。错误报告真的很长,所以为了简洁,我删除了代码此处列出的大量信息的代码。

3 个答案:

答案 0 :(得分:5)

根据@maxd的建议,我最终不得不卸载并重新安装ruby。

这是我遵循的流程。

  1. 我使用命令行rvm remove 2.2.1
  2. 卸载了Ruby
  3. 我使用命令行rvm install 2.2.1
  4. 重新安装2.2.1
  5. 然后我使用命令行sudo gem install rails
  6. 重新安装了rails
  7. 然后我使用bundle install重新安装缺失的宝石
  8. 接下来,我使用gem install rubygems-update将Rubygems从2.0.14更新到2.1。
  9. 然后我使用gem pristine --all将宝石重置为原始状态。
  10. 然后由于某种原因,我不得不重新运行bundle install因为动作邮件程序员4.2.0不再显示为已安装,即使它位于第一个bundle install之后的列表中。
  11. 最后运行rails -v给了我Rails 4.2.0的输出而不是错误代码。
  12. 所以,我跑了rails server,一切都很好。

答案 1 :(得分:1)

我解决了这个问题。但我不确定这是一个好方法。

首先,我重新安装了红宝石。因为,我看起来像版本问题。

rvm reinstall all

gem install rails。完成此过程后,我可以使用rails server命令运行服务器。

我希望这也是你的解决方案。祝你有个美好的一天:D

答案 2 :(得分:0)

我在我的 mac mini(M1) 中遇到了同样的问题。在 the developer forum.

中找到的以下解决方案对我有用
sudo arch -x86_64 gem install ffi

Then

arch -x86_64 pod install