我无法在Leopard中安装任何gem或更新

时间:2010-10-26 16:09:28

标签: ruby gem osx-leopard

bogon:~ Zhulin$ ruby -v
ruby 1.8.6 (2009-06-08 patchlevel 369) [universal-darwin9.0]
bogon:~ Zhulin$ rails -v
Rails 1.2.6
bogon:~ Zhulin$ gems -v
-bash: gems: command not found
bogon:~ Zhulin$ sudo gem install heroku
Password:
ERROR:  While executing gem ... (Gem::RemoteSourceException)
    HTTP Response 302 fetching http://gems.rubyforge.org/yaml
bogon:~ Zhulin$ gem -v
1.0.1
bogon:~ Zhulin$ gem list

*** LOCAL GEMS ***

actionmailer (1.3.6)
actionpack (1.13.6)
actionwebservice (1.2.6)
activerecord (1.15.6)
activesupport (1.4.4)
acts_as_ferret (0.4.1)
capistrano (2.0.0)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.9)
dnssd (0.6.0)
fastthread (1.0.1)
fcgi (0.8.7)
ferret (0.11.4)
gem_plugin (0.2.3)
highline (1.2.9)
hpricot (0.6)
libxml-ruby (0.9.5, 0.3.8.4)
mongrel (1.1.4)
needle (1.3.0)
net-sftp (1.1.0)
net-ssh (1.1.2)
rails (1.2.6)
rake (0.7.3)
RedCloth (3.0.4)
ruby-openid (1.1.4)
ruby-yadis (0.3.4)
rubynode (0.1.3)
sqlite3-ruby (1.2.1)
termios (0.9.4)
bogon:~ Zhulin$ gem -update
ERROR:  Invalid option: -update.  See 'gem --help'.
bogon:~ Zhulin$ gem update --system
Updating RubyGems...
ERROR:  While executing gem ... (Gem::RemoteSourceException)
    HTTP Response 302 fetching http://gems.rubyforge.org/yaml
bogon:~ Zhulin$ gem install rubygems-update
ERROR:  While executing gem ... (Gem::RemoteSourceException)
    HTTP Response 302 fetching http://gems.rubyforge.org/yaml
bogon:~ Zhulin$ 

任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:4)

我真的,真的,建议使用RVM来安装新版本的Ruby。 RVM会将目标Ruby以及相关的gem放入主目录中的一个漂亮的沙箱中,您不必乱用Ruby的系统安装。如果您决定稍后删除它,则删除一个目录就很简单了。尝试修改系统安装,看看会发生什么。 : - )

系统的混乱有时是安全的,有时是坏的/危险的/致命的,取决于依赖它的东西。只使用RVM路由,您编写的代码将依赖于沙箱中的Ruby。此外,您不需要以sudo身份运行,因此您的安装不易出错。

RVM位于:rvm.beginrescueend.com。请务必按照installation page上的说明进行操作。

答案 1 :(得分:2)

如果你有Leopard,你可能可以使用Ruby 1.8.7和Rails 2.3.10。

更新您的Ruby,然后

gem update --system

(或者您可能需要从http://rubyforge.org/projects/rubygems/下载RubyGems 1.3.7解压缩它,并运行ruby setup.rb来获取它)

之后,命令可以是

gem list
gem list -r rails
gem list -r rails$
gem list -rad rails$   <-- list all rails, with description, remotely
gem install haml
gem i fastercsv        <-- 'i' is a shorthand for install

gem i rails --no-rdoc --no-ri    <-- if you install a lot of gems by creating 
                                     different gemsets using RVM, and don't want 
                                     the docs every time

sudo gem i sqlite3-ruby          <-- on some systems, the sudo is needed, but if
                                     using RVM and you are not dealing with "system"
                                     gems, the recommendation is don't use "sudo"