安裝RubyGems


RubyForge (http://rubyforge.org/frs/?group_id=126) 上獲取RubyGems,然后運行 (如有必要,在根目錄下運行)

ruby setup.rb

簡單吧!這樣就安裝了所需的庫文件和gem 命令。這個命令可以為我們完成本文檔中安裝以外的每件事,除了分配gems (目前還不能!).

對於Debian和Ubuntu系統: Debian和Ubuntu系統並沒有在基本的Ruby包中自動包含所有的標准Ruby庫。所以,你可能需要在安裝rubygems前使用“apt-get”命令來安裝 libyaml-ruby和libzlib-ruby。除此以外,要想安裝帶C擴展的 gems,你可能還需要安裝ruby-dev。現在,這兩個平台通常會提供“ruby-full”包來安裝多數公共庫。

如果用戶沒有訪問標准安裝路徑 (通常為 /usr/local/lib/ruby)的權限,他們就得指定另外一個路徑來安裝RubyGems。

要注意的是,如果你不能在標准路徑下安裝RubyGems,你也不能在標准的gem庫路徑中安裝 gems。你需要通過GEM_HOME環境變量來指定一個非標准的gem庫路徑。

使用以下方法在用戶指定目錄下(假定目錄為 /home/mystuffgem庫路徑 /home/mygemrepository)安裝RubyGems :

  $ export GEM_HOME=/home/mygemrepository  $ ruby setup.rb --prefix=/home/mystuff

注意:

  1. export命令是shell指定的。你要使用自己的操作系統和shell的相應命令。例如,windows用戶應該這樣:
set GEM_HOME=/home/mygemrepository
  1. 確保你將 /home/mystuff/bin加入到系統路徑中,這樣就可以找到gem 命令了
  2. 確保將 GEM_HOME的設置加入到你的profile文件中,這樣RubyGems 就能找到你的gem庫目錄。
  3. 如果你想把gem庫放在安裝目錄下,我們建議你設置成GEM_HOME prefix_dir/gems(在這里,prefix_dir是在前面的配置當中--prefix后面的值)

RubyGems的現代版本

如果你的RubyGems版本是0.8.5或是它之后的版本,你可以使用下面的命令來更新到最新版本:

  gem update --system

如果在安裝ruby 庫時系統要求在根目錄下進行,別忘了使用sudo

RubyGems 0.8.5或RubyGems 1.2.0之前的版本 (或者更新結果為“Nothing to Update”)

如果你當前的RubyGems 版本低於0.8.5,或者確切地說是1.2.0,或者當你運行gem update —system時看到的結果為“Nothing to update”,則用以下命令:

  gem install rubygems-update  update_rubygems

手動更新

下載最新的RubyGems tar或者 zip文件,然后跟着 Installing RubyGems來操作。

現在,你已經安裝RubyGems 了,你應該准備好用gems來運行應用程序了,對嗎?

嗯,差不多了。

你還要做一項決定:如何讓Ruby程序使用gems庫。

你知道,由於gems庫的版本化特性,RubyGems並沒有將庫文件直接存儲在標准的庫搜索路徑中。它會在運行時將必要的gem包添加到庫搜索路徑中。

這就意味着在獲得任何gem庫之前必須先加載RubyGems。

Ruby 1.9

現在,默認的Ruby 1.9包已經在大多數平台中自動包含RubyGems了 (目前Debian系統將 RubyGems分離到另一個包中)。這就意味着在Ruby 1.9及以上版本,你不需要在加載gem 庫前在程序中添加require 'rubygems'

麻煩的辦法

加載RubyGems的最直接辦法是在源代碼中輸入:

   require 'rubygems'   require 'some_gem_library'   # ...

這個辦法的問題在於你不想在每個你下載的單獨Ruby程序中都輸入那樣一行代碼!當然對於你自己寫的快速腳本來說沒什么麻煩的,但這終究不是一個好辦法。

使用 -rubygems 命令行選項

為了避免更改你安裝的所有Ruby程序,你可以告訴ruby解釋器在運行其它軟件前先加載ruby gems。這點你很容易做到,就是在每次運行程序前,在ruby命令后添加-rubygems 選項。

ruby -rubygems my_program_that_uses_gems

這樣就可以了,而且還避免了更改已安裝的軟件,但是每次都要輸入這個選項還是很煩人。幸運的是我們還有一種解決方法。

使用RUBYOPT

通過將RUBYOPT環境變量的值設為rubygems,你就可以讓Ruby在每次運行時都先加載RubyGems。這與上面的 -rubygem選項很相似,但是你只需指定一次 (而不是每次運行Ruby腳本時都要指定)。

Unix用戶需要將下面一行放在.profile (或者相關的)文件中:

export RUBYOPT=rubygems

Windows用戶需要使用合適的系統工具來設置RUBYOPT環境變量。 (在XP系統中選擇設置/控制面板/系統,然后點擊高級標,選擇頁面底部的“環境變量”按鈕。需要注意的是一鍵安裝會自動為你設置好RUBYOPT,除非你不讓它設置。

未來之路

提前加載RubyGems軟件是RubyGems的版本化軟件的最大缺點。RubyGems小組正努力尋找新方法來解決這個問題。

與此同時,盡情享受RubyGems吧!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM