微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 使用Bundler GEM不会安装Ruby Gem(EventMachine)

所以我正在尝试安装 GitLab,他们让我使用名为“bundler”的gem,它基本上安装了运行应用程序所需的GEM.无论如何,在运行捆绑器后使用:
sudo -u git -H bundle install --deployment --without development test MysqL aws

这将完美安装一吨宝石然后大约2分钟进入安装我将在终端中收到以下错误.

Ruby版本:来自SVN的最新版本(我已经检查过并且很好)

操作系统:Ubuntu 14.04 LTS(Trusty)

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

/usr/local/bin/ruby extconf.rb
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... no
checking for inotify_init() in sys/inotify.h... yes
checking for writev() in sys/uio.h... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_enable_interrupt()... no
checking for rb_time_new()... yes
checking for sys/event.h... no
checking for epoll_create() in sys/epoll.h... yes
creating Makefile

make "DESTDIR=" clean

make "DESTDIR="
compiling ssl.cpp
compiling em.cpp
em.cpp: In member function ‘void EventMachine_t::_RunEpollOnce()’:
em.cpp:574:37: error: ‘rb_thread_select’ was not declared in this scope
    EmSelect (0,NULL,&tv);
                                 ^
em.cpp: In member function ‘int SelectData_t::_Select()’:
em.cpp:827:67: error: ‘rb_thread_select’ was not declared in this scope
  return EmSelect (maxsocket+1,&fdreads,&fdwrites,&fderrors,&tv);
                                                               ^
em.cpp: In member function ‘void EventMachine_t::_RunSelectOnce()’:
em.cpp:946:40: error: ‘rb_thread_select’ was not declared in this scope
  EmSelect (0,&tv);
                                    ^
make: *** [em.o] Error 1

make Failed,exit code 2

Gem files will remain installed in         /home/git/gitlab/vendor/bundle/ruby/2.2.0/gems/eventmachine-1.0.3 for inspection.

Results logged to /home/git/gitlab/vendor/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/eventmachine-1.0.3/gem_make.out

An error occurred while installing eventmachine (1.0.3),and Bundler cannot continue.
Make sure that `gem install eventmachine -v '1.0.3'` succeeds before bundling.

解决方法

这可能只是ruby 2.2中的一个问题所以你可能会尝试使用2.1作为“他们开始使用Ruby 2.2的那一刻,他们弃用了一堆库并将readline升级到更新的版本.当他们这样做时,它打破了比Ruby 2.2更少的东西. “.

见:https://github.com/eventmachine/eventmachine/issues/509

原文地址:https://www.jb51.cc/ruby/264683.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐