Rails 4服务器失败,Ruby 2.0分段错误,Abort陷阱6

apf*_*wer 7 railstutorial.org ruby-2.0 ruby-on-rails-4 osx-mavericks

我刚刚开始浏览railstutorial.org并开始设置我的开发环境.当我到1.2.5部分为fist_app运行rails服务器时,我输入命令并打印出以下内容:

$ rails server
/Users/aaronpflower/.rvm/gems/ruby-2.0.0-p481@railstutorial_rails_4_0/gems/sqlite3-  <          1.3.8/lib/sqlite3/sqlite3_native.bundle: [BUG] Segmentation fault ruby 2.0.0p481 (2014-05-08 revision 45883) [x86_64-darwin13.2.0]
Run Code Online (Sandbox Code Playgroud)

然后是500行文字

0 enumerator.so
1 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/x86_64-darwin13.2.0/enc/encdb.bundle
2 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/x86_64-darwin13.2.0/enc/trans/transdb.bundle
3 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/x86_64-darwin13.2.0/rbconfig.rb
4 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/site_ruby/2.0.0/rubygems/compatibility.rb
5 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/site_ruby/2.0.0/rubygems/defaults.rb
6 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/site_ruby/2.0.0/rubygems/deprecate.rb
7 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/site_ruby/2.0.0/rubygems/errors.rb
8 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/site_ruby/2.0.0/rubygems/version.rb
9 /Users/aaronpflower/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/site_ruby/2.0.0/rubygems/requirement.rb
Run Code Online (Sandbox Code Playgroud)

结束于:

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.  
Bug reports are welcome. 
For details: http://www.ruby-lang.org/bugreport.html  
Abort trap: 6
Run Code Online (Sandbox Code Playgroud)

当第一次发生时,双重检查了教程中导致这一步骤的步骤,因为它是一个很有可能的初学者.我键入了以下命令和一切结帐.(我也在使用OS 10.9.3)

$ rails -v
Rails 4.0.5
$ ruby -v 
2.0.0p481
$ rvm -v
1.25.27
$ brew doctor
system ready to brew
Run Code Online (Sandbox Code Playgroud)

通过搜索一些帖子建议卸载sqlite3然后重新安装但我仍然得到相同的seg故障消息.不确定下一步.

Chi*_*fic 5

您的Rails -v和Ruby -v对于本教程是正确的.

我还可以从你的输入看到gemfilegem 'sqlite3', '1.3.8'在里面.

1:你捆绑了吗?

当是你跑最后一次bundle update还是bundle install

你是怎么去卸载sqlite3的?你用过$ gem uninstall sqlite3吗?尝试卸载然后重新安装gem.

2: - 什么版本的经理?

您是否使用rvm,rbenv或homebrew进行安装?对不同的部分使用不同的版本管理器会产生通信问题.

3:你安装了Xcode吗?

这取自http://www.railstutorial.org:


"作为先决条件,OS X用户可能需要安装Xcode开发人员工具.为了避免(巨大的)完整安装,我建议使用更小的Xcode命令行工具.


要安装Xcode(我的推荐),请在AppStore中查找.

安装命令行工具(MHartl的建议) - https://developer.apple.com/downloads/

4:你在使用`bundle exec`吗?

尝试bundle exec rails cbundle exec rails s

5:尝试"刷新"您的捆绑目录

如果bundle exec不起作用删除.bundle /目录并重新捆绑

rm -rf .bundle/ && bundle
Run Code Online (Sandbox Code Playgroud)

  • @Chiperific 它有效。我使用“gem uninstall sqlite”卸载了 sqlite3,显然我安装了几个版本,所以我卸载了两个版本。然后使用“gem install sqlite3”重新安装,然后运行“bundle update”和“bundle install”谢谢。 (2认同)