2012-10-23 105 views
1

我試圖在Mac OSX 10.5.8上更新我的Rubygems。目前運行1.0.1。我從https://rubygems.org/pages/download下載了v.8.24。在Mac 10.5.8上安裝/更新RubyGems

,因爲他們說CD'd解壓的文件夾,比這走了出來:

macbook-10:~ sergehonderdos$ cd ~/Desktop/rubygems-1.8.24 
macbook-10:rubygems-1.8.24 sergehonderdos$ sudo ruby setup.rb 
Password: 
./lib/rubygems.rb:335: warning: parenthesize argument(s) for future version 
./lib/rubygems.rb:517: warning: parenthesize argument(s) for future version 
./lib/rubygems.rb:32:in `require': ./lib/rubygems/deprecate.rb:54: syntax error, unexpected ',', expecting '|' (SyntaxError) 
... define_method name do |*args, &block| # TODO: really works ... 
          ^
./lib/rubygems/deprecate.rb:55: syntax error, unexpected tCONSTANT, expecting '}' 
./lib/rubygems/deprecate.rb:64: syntax error, unexpected kEND, expecting '}' 
./lib/rubygems/deprecate.rb:69: syntax error, unexpected kEND, expecting '}' 
    from ./lib/rubygems.rb:32 
    from setup.rb:27:in `require' 
    from setup.rb:27 
macbook-10:rubygems-1.8.24 sergehonderdos$ gem -v 
1.0.1 

我嘗試更新的原因是安裝指南針。

我不知道哪裏出了問題,有什麼解決辦法?

+0

安裝了哪個版本的ruby? 'ruby setup.rb'適用於1.9.3和1.8.7(使用'rvm'安裝)。一種可能的解決方案可能是徹底卸載RUBYGEMS並重試。參考:[卸載RUBYGEMS](http://lists.rubyonrails.org/pipermail/rails/2006-May/038251.html) –

+0

macbook-10:〜sergehonderdos $ ruby​​ -v ruby​​ 1.8.6(2009-06- 08 patchlevel 369)[universal-darwin9.0] 我聽說過RVM,它比較容易,但我不知道它是什麼... –

+0

行;所以可能是因爲ruby版本爲'1.8.6'(我將在安裝1.8.6版本後再試一次。)任何你不想將ruby版本升級到1.8.7的原因?甚至更好的1.9.3?還可以開始使用'rvm',以便安裝多個版本的ruby。查看http://railscasts.com/episodes/200-rails-3-beta-and-rvm?view=asciicast獲取關於更新ruby&rvm的一些指導。 [rvm文檔](https://rvm.io/rvm/basics/)也非常有幫助。 –

回答

1

我能夠通過在安裝有rvm的我的機器上安裝ruby 1.8.6來重現此行爲。確認rubygems 1.8.24版本與ruby 1.8.6版本不兼容。

可能有某種方法可以安裝與1.8.6兼容的以前版本的rubygems,但我認爲這是一項複雜的任務。大多數紅寶石組件會提前與新版本的紅寶石兼容(1.8.7或1.9.3)

處理此問題的最佳方法是升級ruby版本。