2014-03-07 37 views
1

第2章轨道教程中,我尝试使用,以产生支架:中止陷阱6试图产生后轨道脚手架

$ rails generate scaffold User name:string email:string 

我收到以下错误:

[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 

我曾尝试用中止陷阱找到这个特定的错误:6在stackOF但不能。我收到了同样的问题,当我尝试:

$ bundle exec rake db:migrate 

,甚至当我尝试运行轨道服务器

$ rails s 

我发现在Ruby错误报告的一些信息@https://bugs.ruby-lang.org/issues/8373 它说,我可能有更老版本的Ruby扩展库。我如何摆脱这些或清理它,使我不会得到这个错误?

bus.ruby给出了一个解决方案,但是非常非常新,我不明白这一点。给出以下解决方案:

“[BUG] unknown type 0x22”最有可能是T_DATA for ruby​​ 1.8。 你有一个扩展库(或更多)的老红宝石。 尝试otool -L以下。

1 /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/enc/encdb.bundle 
2 /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/enc/trans/transdb.bundle 
9 /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/pathname.bundle 

非常感谢您的帮助。

+1

我想出了如何解决这个问题。当我更新OSX时,我认为我的gemset被搞乱了。简单修复w /'$ gemset-all gemset pristine' – user3353784

+0

就是这样。它是如何发生的,超越了我。我的问题可能是因为我升级了自制软件。 – ctilley79

回答

2

以上意见来自user3353784是正确的。我正在运行ruby 2.2.0和rails 4.2。对于较新版本的rvm的简化命令是:

rvm gemset pristine