安裝 Rubies
RVM 支援的官方 ruby 解譯器版本可以使用下列任何一種方法安裝。
已知的 Rubies(解譯器)
RVM 維護一個解譯器及其版本清單,可以安裝至其中。若要查看此清單,請執行下列指令。
$ rvm list known
請注意,RVM 不僅限於此清單。
自動安裝相依性
安裝 rubies 時,RVM 可能需要使用 sudo 安裝相依性。請確保呼叫 RVM 指令的使用者具有 sudo 權限。
如果您想要讓沒有 sudo 權限的使用者執行 RVM 指令,您需要關閉自動安裝相依性
rvm autolibs disable
不過,這表示您必須手動管理相依性。
快速安裝
安裝 ruby(遵循說明)
rvm install 2.1.1您也可以
- 觀看最準確(但非官方)的 rvm 螢幕錄影
- 從 Rails 開始?觀看 RailsCasts.com 上的 Rails 入門
自動安裝
RVM 允許兩種基本操作模式:互動式和非互動式。在互動模式中,RVM 會作為函式來源,並用於與環境互動。在非互動模式中,RVM 只會新增至 PATH,無法與環境互動。由於互動模式主要供使用者使用,因此它也會顯示額外的資訊和對話框。若要避免此情況,請勿將 rvm 作為函式來源,或採用下列其中一種方法改用二進位檔
/full/path/to/rvm/bin/rvm install 2.1.1或
command rvm install 2.1.1
修補程式等級
使用 RVM 的修補程式等級
對於每個基於 C 的直譯器,您也可以使用「-l」或「--level」選項指定修補程式等級。每個直譯器預設為 RVM 已知的最新修補程式等級。例如,RVM(截至撰寫本文時)將 Ruby 1.8.7 預設為修補程式等級 352。如果您想切換到修補程式等級 160 來測試某些內容,您可以輕鬆透過以下方式完成
$ rvm install 2.1.1 Installing Ruby from source to: ... $ ruby -v ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin12.0]
這將下載、編譯並安裝 Ruby-2.1.1,然後將其設定為目前版本。在修補程式等級之間切換非常容易
$ rvm ruby-2.0.0-p451 Switching to ruby 2.0.0-p451 ... $ rvm ruby-2.0.0-p481 Switching to ruby 2.0.0-p481 ...
別忘了由於預設值而產生的速記。上述內容等同於
$ rvm 2.0.0-p451 # same as: rvm ruby-2.0.0-p451 $ rvm 2.0.0-p481 # same as: rvm ruby-2.0.0-p481
取得最新且最好的版本
您可以取得任何特定 Ruby 的頭端/主幹版本,如下所示。
對於任何支援「-head」的直譯器,請在直譯器名稱後加上「-head」字尾。例如,要安裝 Ruby 2.1 的最新開發主幹
$ rvm install ruby-2.1-head $ rvm use ruby-2.1-head
在使用時安裝
如果您希望 RVM 在您使用 Ruby 時自動安裝 Ruby,請將下列旗標新增到您的 rvmrc 檔案
$ cat $HOME/.rvmrc rvm_install_on_use_flag=1
設定旗標
設定指令碼旗標可以在「-C」後加上逗號分隔的清單,且不含空格,如下所示
$ rvm install 2.1.1 -C --enable-shared,--with-readline-dir=$HOME/.rvm/usr
編譯旗標
如果您需要傳遞編譯旗標來進行編譯程序,請設定對應的環境變數即可。
舉例來說,要為 Ruby 2.1.1 啟用 gdb
$ export optflags="-O0 -ggdb" $ rvm install 2.1.1
靜態 MRI
如果您希望將 MRI Ruby(1.9/2.0/2.1)編譯為靜態連結,而不是動態連結,請傳遞「--static」旗標,如下所示
$ rvm --static install 2.1.1
產生文件
為了節省空間,RVM 不会自動產生並安裝每個 Ruby 的 ri / rdoc 文件。若要為 Ruby 產生此文件,請執行下列指令
$ rvm docs generate all
請注意,這需要目前選取的 Ruby 版本的提取來源在系統中($rvm_path/src/
只要您沒有透過執行「rvm cleanup all」來清除所有目前已安裝 Ruby 的提取來源,您就可以透過執行以下動作來安裝所有目前已安裝 Ruby 的文件
$ rvm all do rvm docs generate all
如果您已執行清除,很遺憾,這表示您需要執行以下動作來重新產生文件,例如
$ rvm reinstall 2.1.1 && rvm docs generate all
一如往常,別忘了傳遞任何額外的參數,例如「--patch」,到您最初使用的指令的重新安裝部分(如有)。
如需更多資訊,請參閱
$ rvm help docs