新手:在Debian上安装Rails(Gem Fetch Error?)

时间:2009-01-20 00:41:42

标签: ruby-on-rails rubygems

我在安装Ruby on Rails时遇到很大麻烦。

我用apt-get安装了Ruby当我尝试安装Ruby Gems时,安装程​​序一直无限期地挂起来安装ri,所以我尝试从源代码安装Ruby。我有同样的问题,所以我安装了没有ri或RDoc的Ruby Gems。我不知道这是否与下面的问题有关。

当我继续尝试通过Gems安装Rails时,我首先遇到一个错误,Ruby无法找到zlib.so ...所以我将zlib.so复制到了Ruby所期望的位置。

从strace的输出来看,看起来Ruby正在寻找

  

/usr/local/lib/ruby/1.8/x86_64-linux/zlib.so

但是zlib.so只位于

  

/usr/lib/ruby/1.8/x86_64-linux/zlib.so

现在我收到一个新错误:

    ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
        SocketError: getaddrinfo: Name or service not known (http://gems.rubyforge.org/gems/actionmailer-2.2.2.gem)

我感觉有些事情是非常错误的。我该怎么做才能改善这个错误?

3 个答案:

答案 0 :(得分:4)

我自己刚遇到这个问题,并发现了这个网站: http://www.typeoneerror.com/articles/post/updating-rails-error

建议使用-p开关(它适用于installupdate命令。

我不知道怎么或为什么(也许其他人可以解释它?),但它确实对我有用。有时候,如果它失败了,只要再次尝试再次运行它,它似乎会在特定宝石上再次尝试之后通过它。

答案 1 :(得分:0)

关于getaddrinfo错误,这可能意味着您的计算机无法解析localhost或其主机名。可能值得检查您的/etc/hosts文件以完成。如果我的机器的主机名是bob且我的完全限定域名是example.com,我将检查以下条目:

127.0.0.1    example.com bob

答案 2 :(得分:0)

以下是解决这个问题的原因:

gem update --system - >得到NoM​​ethodError

然后gem update - >现在工作正常。