Thin + EventMachine无法启动

时间:2013-01-30 17:30:37

标签: ruby sinatra redhat eventmachine thin

为sinatra应用加载Thin Web服务器时,我一直在

Unable to load the EventMachine C extension; To use the pure-ruby reactor, require em/pure_ruby'<path>/vendor/bundle/ruby/1.9.1/gems/eventmachine-1.0.0.rc.4/lib/eventmachine.rb:8:in `require': cannot load such file -- rubyeventmachine (LoadError)
from <path>/vendor/bundle/ruby/1.9.1/gems/eventmachine-1.0.0.rc.4/lib/eventmachine.rb:8:in `<top (required)>'
from <path>/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/lib/thin.rb:7:in `require'
from <path>/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/lib/thin.rb:7:in `<top (required)>'
from <path>/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/bin/thin:5:in `require'
from <path>/vendor/bundle/ruby/1.9.1/gems/thin-1.5.0/bin/thin:5:in `<top (required)>'
from <path>/vendor/bundle/ruby/1.9.1/bin/thin:19:in `load'
from <path>/vendor/bundle/ruby/1.9.1/bin/thin:19:in `<main>'

在我的Mac OSX中,我启动服务器没有任何问题,但在我的服务器中是一个 红帽企业Linux服务器版本6.2(圣地亚哥) 我无法启动我的应用。

我正在使用rvm 1.18.5和ruby-1.9.3-p374

提前致意并表示感谢。

有人遇到过这个问题吗?

3 个答案:

答案 0 :(得分:0)

我解决了这个问题,它倾倒了我的大部分Bundler配置的gem并直接在我的全球gemset上安装它们。我不得不从我的Sinatra加载代码中删除所有Bundler引用,而只使用rubygems。 现在我只需要使用Bundler进行黄瓜测试并使用capistrano进行部署。

答案 1 :(得分:0)

尝试重新安装gem'eventmachine':

$ gem uninstall eventmachine

$ gem install eventmachine  
or 
$ bundle install

请参阅:https://stackoverflow.com/a/15140634/445908

答案 2 :(得分:0)

通过卸载自制软件的ruby 2.5版本修复了我的“无法加载EventMachine C扩展”错误。在Rails/Ruby Error When Creating Database: Unable to load the EventMachine C extension

上查看此评论