【问题标题】:Trouble installing ruby on rails在 Rails 上安装 ruby​​ 时遇到问题
【发布时间】:2012-07-29 09:59:53
【问题描述】:

我来了

ERROR: While execution gem ... (NameError) uninitialized constant Gem::RemoteFetcher::OpenSSL

当我尝试运行时

# gem install rails
我已经有了
  • Ruby v1.8.7
  • Gem (rubygems.nonarch) v1.7.2

已安装。

知道我应该怎么做吗?


运行 sudo gem install rails 现在给我:

错误:安装导轨时出错: 错误:无法构建 gem 原生扩展。 /usr/bin/ruby extconf.rb mkmf.rb 在 /usr/lib/ruby/ruby.h 找不到 ruby​​ 的头文件 Gem 文件将继续安装在 /usr/lib/ruby/gems/1.8/gems/json-1.7.4 中以供检查。 结果记录到 /usr/lib/ruby/gems/1.8/gems/json-1.7.4/ext/json/ext/generator/gem_make.out

一切都通过 YUM 安装

运行 Fedora 15

【问题讨论】:

  • 感谢您的建议。我还没有问很多问题,我还在等待一些令人满意的答案。但我会回去检查我是否错过了任何东西。 :)

标签: ruby-on-rails rubygems fedora


【解决方案1】:

我在执行 #gem install rake 时遇到了类似的问题,但我发现我的系统位于代理服务器后面,因此我尝试通过以下命令提供代理地址:

gem install rake -p http//IPaddress:proxyport (put : after http)  

它对我有用,之后没有这样的错误。

【讨论】:

  • OR export http_proxy = http : //user:password@proxy_url:port 在运行 gem 之前
【解决方案2】:

点击rvm requirements。你没有安装libssl-dev

➜  ~  rvm requirements

Requirements for Linux ( DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.10
DISTRIB_CODENAME=maverick
DISTRIB_DESCRIPTION="Ubuntu 10.10" )

NOTE: 'ruby' represents Matz's Ruby Interpreter (MRI) (1.8.X, 1.9.X)
             This is the *original* / standard Ruby Language Interpreter
      'ree'  represents Ruby Enterprise Edition
      'rbx'  represents Rubinius

bash >= 4.1 required
curl is required
git is required (>= 1.7 for ruby-head)
patch is required (for 1.8 rubies and some ruby-head's).

To install rbx and/or Ruby 1.9 head (MRI) (eg. 1.9.2-head),
then you must install and use rvm 1.8.7 first.

Additional Dependencies:
# For Ruby / Ruby HEAD (MRI, Rubinius, & REE), install the following:
  ruby: /usr/bin/apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

# For JRuby, install the following:
  jruby: /usr/bin/apt-get install curl g++ openjdk-6-jre-headless
  jruby-head: /usr/bin/apt-get install ant openjdk-6-jdk

# For IronRuby, install the following:
  ironruby: /usr/bin/apt-get install curl mono-2.0-devel

我不知道 Fedora 的要求与 Ubuntu 的要求有何不同,但这可能只是在软件包名称上。

【讨论】:

  • 我还没有 rvm。我会安装运行并回复您。
  • 我通过 yum 使用 (rubygem-rvm.noarch) 安装了 rvm。哪个 rvm 给了我:/usr/bin/which: no rvm in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ayos/bin)
【解决方案3】:

我刚刚在 Ubuntu 上安装 gem 时遇到了同样的问题。它现在正在工作,我认为我所做的修复它是通过防火墙启用 ssl。

看起来 gem 会返回此错误以响应未能建立 SSL 连接,可能是在尝试处理失败时。

罗素

【讨论】:

    猜你喜欢
    • 2014-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-13
    • 2014-04-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多