【问题标题】:bundle install failing while Installing eventmachine 1.0.3安装 eventmachine 1.0.3 时捆绑安装失败
【发布时间】:2015-07-05 07:21:00
【问题描述】:

虽然捆绑安装在以下步骤失败..

Installing dotenv 0.11.1
Installing eventmachine 1.0.3 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
C:/Ruby21-x64/bin/ruby.exe extconf.rb
checking for main() in -lssl... no
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... yes
checking for inotify_init() in sys/inotify.h... no
checking for __NR_inotify_init in sys/syscall.h... no
checking for writev() in sys/uio.h... no
checking for rb_wait_for_single_fd()... yes
checking for rb_enable_interrupt()... no
checking for rb_time_new()... yes
checking for windows.h... yes
checking for winsock.h... yes
checking for main() in -lkernel32... yes
checking for main() in -lrpcrt4... yes
checking for main() in -lgdi32... yes
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
generating rubyeventmachine-x64-mingw32.def
The system cannot find the path specified.
make: *** [rubyeventmachine-x64-mingw32.def] Error 1
make failed, exit code 2
Gem files will remain installed in C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/eventmachine-1.0.3 for inspection.
Results logged to C:/Ruby21-x64/lib/ruby/gems/2.1.0/extensions/x64-mingw32/2.1.0
/eventmachine-1.0.3/gem_make.out
An error occurred while installing eventmachine (1.0.3), and Bundler cannot

继续。 在捆绑之前确保gem install eventmachine -v '1.0.3' 成功。

请帮忙看看如何改正??非常感谢

【问题讨论】:

  • 您需要安装libssl。 Ubuntu:sudo apt-get install libssl。 MacOS:sudo brew install openssl.
  • @mudasobwa 如何在 Windows 中安装?安装后我是否再次运行 bundle install allover ?我担心它可能会再次开始下载所有 gem,并且可能存在版本冲突或类似的问题.. 有人可以帮忙吗?非常感谢....
  • 谷歌搜索“在 Windows 上安装 openssl”。 bundle install after 是必需的,但它现在会下载已下载的任何内容。
  • @mudasobwa 你的意思是已经下载的将被忽略,只会下载新的? :-)..谢谢

标签: ruby windows gem bundler


【解决方案1】:

eventmachine 1.0.3 中存在一个错误,阻止它使用DevKit-x64 编译器进行构建。

您可以将eventmachine gem 升级到更新版本或使用32 位 版本的Ruby。

【讨论】:

  • 感谢您的回复。 eventmachine 1.0.3 不在 gem 文件中。它就像某种在内部调用的依赖 gem。所以就像你说的我想使用命令 gem install eventmachine -v '1.0.4' 手动执行 eventmachine 1.0.4 但仍然显示相同的错误......我认为原因可能是我需要 mingw32 。重新安装 32- 64 位 Windows 笔记本电脑中的位 ruby​​ 可能是一场灾难,请提供任何建议。谢谢
  • 实际上不,32 位 Ruby 在 64 位 Windows 上运行良好。事实上,建议设置是运行 32 位 Ruby。提供 64 位 Ruby 是因为在某些情况下(嵌入式和特殊虚拟化服务器)32 位重定向不可用,或者某些特殊任务需要 64 位 Ruby 的情况。
  • 正如你所说,它安装了 ruby​​ 2.1.6 32 位版本,并且 eventmachine 问题失败了......但我被困在 http_parser.rb 0.6.0......我不确定它的问题是..它抛出类似的错误......无论如何找出哪个宝石已经调用了这个它们都在一个队列中无法真正确定..在我的c:/下有两个MinGW-4.8.1和MinGW ..那是问题吗?非常感谢
  • 在您的Gemfile.lock 下。您将不得不提供有关新错误等的更多信息。我没有足够的信息知道http_parser.rb 的问题是什么。还有一个用于 32 位和 64 位 Ruby 的不同 DevKit。确保安装了正确的。
  • 是的,刚才我意识到我没有 devkit 并安装了 32 位的 devkit,上面的错误得到纠正,现在用新的..这里是stackoverflow.com/questions/31234917/…
猜你喜欢
  • 1970-01-01
  • 2015-10-19
  • 2016-04-04
  • 1970-01-01
  • 2018-12-02
  • 1970-01-01
  • 2013-06-26
相关资源
最近更新 更多