创建数据库时Rails / Ruby错误:无法加载EventMachine C扩展 [英] Rails/Ruby Error When Creating Database: Unable to load the EventMachine C extension

查看:156
本文介绍了创建数据库时Rails / Ruby错误:无法加载EventMachine C扩展的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



eventmachine gem已安装并存储在我的gemfile中:

  eventmachine(1.0.0,0.12.10)

请帮忙!尝试使用以下命令创建数据库:

  Fitzs-MacBook-Pro:twilio_insanity Fitz $ rake db:create '

返回以下错误:


无法加载EventMachine C扩展;要使用pure-ruby
reactor,需要'em / pure_ruby'rake中止!无法加载这样的文件 -
ruby​​eventmachine
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/eventmachine-1.0.0/lib/eventmachine.rb:8 :在
中需要'
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/eventmachine-1.0.0/lib/eventmachine。 rb:8:in
'
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/thin-1.5.0/lib /thin.rb:7:in
需要'
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/thin-1.5。 0 / lib / thin.rb:7:in
'
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler -1.2.3 / lib / bundler / runtime.rb:68:在
require'
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@ global / gems / bundler-1.2.3 / lib / bundler / runtime.rb:68:在
/ Users / Fitz /中的
块(2级)。 rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in
每个'
/ Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/g ems / bundler-1.2.3 / lib / bundler / runtime.rb:66:in
要求块
/Users/Fitz/.rvm/gems/ruby- 1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in
每个'
/Users/Fitz/.rvm /gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in
要求'
/ Users /Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler.rb:128:in
require'
/Users/Fitz/Desktop/twilio_insanity/config/application.rb:7:in
'/ Users / Fitz / Desktop / twilio_insanity / Rakefile:5:in
require'/ Users / Fitz / Desktop / twilio_insanity / Rakefile:5:in '
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/ bin / ruby​​_noexec_wrapper:14:在
eval'
/Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/bin/ruby_noexec_wrapper:14:in
'(通过使用-trace运行任务来查看完整跟踪)

```

有人在评论中回答...见下文。

基本上,虽然我有Ruby的单独版本,但由于某些gem只安装在特定版本的ruby上,所以变得令人困惑。

Fix完全卸载了ruby和rails,然后重新安装。修正了它!



这有助于:

似乎对您的问题很有帮助。你能确保你的Gemfile中有gem eventmachine或类似的东西,并且可以成功捆绑吗? - Scott Helm 1月6日6:24


Update:

the eventmachine gem is installed and in my gemfile:

 eventmachine (1.0.0, 0.12.10)

Please help! Trying to create a database with the following:

Fitzs-MacBook-Pro:twilio_insanity Fitz$ rake db:create'

Returns the following error:

Unable to load the EventMachine C extension; To use the pure-ruby reactor, require 'em/pure_ruby' rake aborted! cannot load such file -- rubyeventmachine /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/eventmachine-1.0.0/lib/eventmachine.rb:8:in require' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/eventmachine-1.0.0/lib/eventmachine.rb:8:in ' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/thin-1.5.0/lib/thin.rb:7:in require' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/gems/thin-1.5.0/lib/thin.rb:7:in ' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:68:in require' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:68:in block (2 levels) in require' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in each' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:66:in block in require' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in each' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler/runtime.rb:55:in require' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@global/gems/bundler-1.2.3/lib/bundler.rb:128:in require' /Users/Fitz/Desktop/twilio_insanity/config/application.rb:7:in' /Users/Fitz/Desktop/twilio_insanity/Rakefile:5:in require' /Users/Fitz/Desktop/twilio_insanity/Rakefile:5:in' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/bin/ruby_noexec_wrapper:14:in eval' /Users/Fitz/.rvm/gems/ruby-1.9.3-p327@rails3tutorial2ndEd/bin/ruby_noexec_wrapper:14:in ' (See full trace by running task with --trace)

```

解决方案

Someone kind of answered in comments...see below.

Basically though I had seperate versions of Ruby, which was getting confusing because some gems were only installed on certain versions of ruby.

Fix was totally uninstalling ruby and rails, then reinstalling. Fixed it!

This helped:

This comment in another thread seems promising for your issue. Can you ensure that you have "gem eventmachine" or similar in your Gemfile, and can successfully bundle? – Scott Helm Jan 6 at 6:24

这篇关于创建数据库时Rails / Ruby错误:无法加载EventMachine C扩展的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆