ERROR: Failed to build gem native extension. when trying to install rails

ERROR: Failed to build gem native extension. when trying to install rails

SYS:Ubuntu14.04 Ruby 版本: ruby 2.2.3p173(2015-08-18 修订版 51636)[x86_64-linux] Gem版本:2.4.8

我不能说我在rails上有丰富的经验,但是当我试图在我的新电脑上部署rails时,我什至无法安装rails。 这是 gem_make.out 文件
/usr/local/bin/ruby -r ./siteconf20151030-11581-1f0cbp1.rb extconf.rb 检查 C 编译器是否接受 ... 是 使用打包的库构建 nokogiri。 <strong>* extconf.rb 失败 *</strong> 由于某种原因无法创建 Makefile,可能是缺少必要的 图书馆 and/or headers。查看 mkmf.log 文件以获取更多详细信息。你可以 需要配置选项。</p> <p>提供的配置选项: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/包括 --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --源目录=。 --curdir --ruby=/usr/local/bin/$(RUBY_BASE_NAME) - 帮助 - 干净的 --use-system-libraries /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in <code>require': cannot load such file -- openssl (LoadError) from /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire' 来自 /usr/local/lib/ruby/2.2.0/net/https.rb:22:in <top (required)>' from /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:inrequire' 来自 /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from /usr/local/lib/ruby/gems/2.2.0/gems/mini_portile-0.6.2/lib/mini_portile.rb:3:in' 来自 /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:128:in require' from /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:128:inrescue in require' 来自 /usr/local/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:39:in require' from extconf.rb:395:in'

extconf 失败,退出代码 1 由于我在make的时候没有办法使用Openssl,所以我把https源换成了http。 有什么建议吗?

Ruby 代码需要 ssl 本机库和 headers 才能构建。

这可以解决您的问题

sudo apt-get install libssl-dev

尝试以下操作以确保您拥有必要的库:

sudo apt-get install ruby-dev zlib1g-dev libgmp-dev libxml2-dev libssl-dev openssl

是的,我找到了解决方法,这是基于@matanco的解决方案,但他的解决方案并不完整
sudo apt-get install ruby-dev zlib1g-dev libgmp-dev libxml2-dev libssl-dev openssl
执行此命令后,您应该再次编译 ruby 安装 须藤 sh ./configure<br> 须藤制作<br> 须藤安装<br>