3.1 安裝 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”包來安裝多數公共庫。
3.2 在用戶指定的目錄下安裝RubyGems
如果用戶沒有訪問標准安裝路徑 (通常為 /usr/local/lib/ruby
)的權限,他們就得指定另外一個路徑來安裝RubyGems。
要注意的是,如果你不能在標准路徑下安裝RubyGems,你也不能在標准的gem庫路徑中安裝 gems。你需要通過GEM_HOME環境變量來指定一個非標准的gem庫路徑。
使用以下方法在用戶指定目錄下(假定目錄為 /home/mystuff,
gem庫路徑 /home/mygemrepository
)安裝RubyGems :
$ export GEM_HOME=/home/mygemrepository $ ruby setup.rb --prefix=/home/mystuff
注意:
export命令是
shell指定的。你要使用自己的操作系統和shell的相應命令。例如,windows用戶應該這樣:
set GEM_HOME=/home/mygemrepository
- 確保你將
/home/mystuff/bin加入到系統路徑中,這樣
就可以找到
gem
命令了。
- 確保將
GEM_HOME的
設置加入到你的profile文件中,這樣RubyGems 就能找到你的gem庫目錄。 - 如果你想把gem庫放在安裝目錄下,我們建議你設置成
GEM_HOME
prefix_dir/gems。
(在這里,prefix_dir是在前面的配置當中--prefix
后面的值)
3.3 更新RubyGems
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來操作。
3.4 安裝之后 -- 設置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
選項。
這樣就可以了,而且還避免了更改已安裝的軟件,但是每次都要輸入這個選項還是很煩人。幸運的是我們還有一種解決方法。
使用RUBYOPT
通過將RUBYOPT環境變量的值設為
rubygems
,你就可以讓Ruby在每次運行時都先加載RubyGems。這與上面的 -rubygem選項很相似,但是你只需指定一次
(而不是每次運行Ruby腳本時都要指定)。
Unix用戶需要將下面一行放在.profile
(或者相關的)文件中:
Windows用戶需要使用合適的系統工具來設置RUBYOPT環境變量。 (在XP系統中選擇設置/控制面板/系統,然后點擊高級標,選擇頁面底部的“環境變量”按鈕。需要注意的是一鍵安裝會自動為你設置好RUBYOPT,除非你不讓它設置。
未來之路
提前加載RubyGems軟件是RubyGems的版本化軟件的最大缺點。RubyGems小組正努力尋找新方法來解決這個問題。
與此同時,盡情享受RubyGems吧!