当我尝试在我的 Amazon Linux EC2 实例上安装 ohai 和 fpm 等 gem 时收到错误消息:
[ec2-user@ip-172-31-43-16 ~]$ sudo gem install ohai
Building native extensions. This could take a while...
ERROR: Error installing ohai:
ERROR: Failed to build gem native extension.
/usr/bin/ruby2.0 extconf.rb
Gem files will remain installed in /usr/local/share/ruby/gems/2.0/gems/ffi-1.9.6 for inspection.
Results logged to /usr/local/share/ruby/gems/2.0/gems/ffi-1.9.6/ext/ffi_c/gem_make.out
就是这样,没有其他提示。消息与 fpm 相同。
我已经在 Google 上搜索过,并做了我认为应该做的一切。我已经使用 yum 安装了 gcc、make、install、ruby-devel - 事实上,在尝试了所有东西之后,我使用 yum 安装了所有 ruby20*、rubygem[s]20* 等。并且 yum 彻底更新了我的整个系统。我已经执行了 gem update --system。
我能够 gem install facter,它不会构建本机扩展,因此 Rubyville 的其余部分看起来不错。
答案1
这里有一个类似的问题和答案: https://github.com/sj26/mailcatcher/issues/144
在这种情况下,有人建议重新安装 ruby,但效果因人而异。在这种情况下,build-essentials 是整个过程中检查的重要项目(Ubuntu 系统,而不是 CentOS)。我收集到的 CentOS 等效项是yum groupinstall "Development Tools"