1. 程式人生 > Ruby 程式語言入門 >02 Ruby 的安裝

02 Ruby 的安裝

我們可以使用多種工具安裝 Ruby。本章節主要介紹如何通過主流的包管理器和第三方工具管理和安裝 Ruby,以及如何通過原始碼編譯安裝。

1. 包管理器

如果使用的是類 UNIX 作業系統,而且只需要安裝一個版本的 Ruby,使用系統的包管理器是最簡單的安裝方式。

經驗:在實際生產模式的時候,我們在一個伺服器可能會有多個專案會依賴不同版本的 Ruby 版本,這個時候就需要我們在一個伺服器中安裝多個版本的 Ruby,所以使用 Ruby 的管理工具是最好的選擇,例如:rbenv,管理工具中會詳細講到它。

1.1 apt(Debian或Ubuntu)

Debian GNU/Linux 和 Ubuntu 使用 apt 包管理器。用法如下:

$ sudo apt-get install ruby-full

1.2 yum(CentOS、Fedora 或 RHEL)

CentOS、Fedora 和 RHEL 使用 yum 包管理器。用法如下:

$ sudo yum install ruby

這將安裝最新的 Ruby 穩定版。

1.3 Homebrew(macOS)

許多 macOS 使用者使用 Homebrew 作為包管理器。它會安裝最新的Ruby。

$ brew install ruby

安裝成功後我們通過 ruby -v 來檢視當前 Ruby 的版本。

2. 第三方安裝工具

如果系統或者包管理器提供的 Ruby 版本已經過時,可以使用第三方安裝工具來安裝更新的版本。其中許多工具允許在同一個系統中安裝多個 Ruby 版本,相關的工具能幫你在不同的版本之間切換。如果打算用

RVM 作為版本管理工具,不需要其它的安裝工具,它自己就具有這些功能。

2.1 ruby-build

ruby-buildrbenv 的一個外掛,能在任意目錄中編譯和安裝不同版本的 Ruby。ruby-build 也可以不依賴 rbenv 而單獨使用。支援的平臺有 macOS、Linux 和其它類 UNIX 作業系統

2.2 ruby-install

ruby-install 能在任意目錄中編譯和安裝不同版本的 Ruby。還有個兄弟工具,chruby,可以用來切換不同的 Ruby 版本。支援的平臺有 macOS、Linux 和其它類 UNIX 作業系統。

2.3 RubyInstaller

如果使用 Windows,有個不錯的專案能幫你安裝 Ruby:RubyInstaller。它能幫你在 Windows 中安裝所需的所有 Ruby 開發環境。

下載、執行,即可!

RailsInstaller 和 Ruby Stack對比

如果是為了使用 Ruby on Rails 而安裝 Ruby,可以使用下列安裝工具:

  • RailsInstaller,使用的是 RubyInstaller,但包括了其它能夠幫助 Rails 開發的工具。支援 OS X 和 Windows。
  • Bitnami Ruby Stack,提供了完整的 Rails 開發環境。支援 macOS、Linux、Windows、虛擬機器和雲映象。

3. 管理工具(推薦)

3.1 rbenv(推薦)

rbenv 用於管理系統中安裝的多個 Ruby 版本。它不能直接安裝 Ruby,但有個流行的外掛叫 ruby-build 能夠安裝 Ruby。這兩個工具都支援 macOS、Linux 和其它類 UNIX 作業系統。

3.1.1 安裝 rbenv

安裝 rbenv 以及其外掛步驟:

git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
# 用來編譯安裝 ruby
git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
# 通過 gem 命令安裝完 gem 後無需手動輸入 rbenv rehash 命令, 推薦
git clone git://github.com/sstephenson/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash
# 通過 rbenv update 命令來更新 rbenv 以及所有外掛, 推薦
git clone https://github.com/rkh/rbenv-update.git ~/.rbenv/plugins/rbenv-update

那應該把上面的程式碼放在~/.bashrc或者~/.bash_profile裡面

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

注意 :如果你使用的是zsh,然後把下面的程式碼放在~/.zshrc裡面

最後,重啟一下你的終端。

3.1.2 安裝指定版本Ruby

列出所有可以安裝的 Ruby 版本

$ rbenv install --list 

安裝特定版本的ruby,例如:2.6.5

$ rbenv install 2.6.5 

3.1.3 檢視安裝Ruby版本

檢視rbenv已經安裝好的Ruby版本

$ rbenv versions

檢視 rbenv 當前設定的 Ruby 版本

$ rbenv version

3.1.4 設定Ruby版本

全域性設定 Ruby 版本為 2.6.5:

$ rbenv global 2.6.5

僅設定當前目錄及子目錄的 Ruby 版本為 2.6.5

$ rbenv local 2.6.5

Tips:rbenv 可以通過建立.ruby-version檔案來強制要求.ruby-version所在目錄的Ruby版本,只要建立一個.ruby-version檔案然後在裡面寫入Ruby的版本號即可,例如:2.6.5

如果 Ruby 版本設定成功,檢視當前 Ruby 的版本會變為 2.6.5:

$ ruby -v
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]

3.2 rvm

RVM (Ruby Version Manager)能在系統中安裝和管理多個 Ruby 版本。同時還能管理不同的 gem 集。支援 macOS、Linux 和其它類 UNIX 作業系統。

3.2.1 安裝 rvm

$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
$ curl -sSL https://get.rvm.io | bash -s stable
$ source ~/.rvm/scripts/rvm # 或者重新開啟終端

3.2.2 切換到 Ruby China 的映象

$ echo "ruby_url=https://cache.ruby-china.com/pub/ruby" > ~/.rvm/user/db

3.2.3 檢查安裝是否正確

$ rvm -v
rvm 1.29.10 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

3.2.4 列出已知的 Ruby 版本

$ rvm list known

3.2.5 安裝指定版本

$ rvm install 2.6.5 --disable-binary

3.2.6 設定成系統預設版本

$ rvm use 2.6.5 --default

3.2.7 檢視已經安裝的 Ruby 版本

$ rvm list

3.2.8 解除安裝已安裝版本

$ rvm remove 2.6.5

如果 Ruby 安裝成功,我們同樣使用 ruby -v 的命令來檢查當前的 Ruby 版本。

4. 原始碼編譯安裝(不推薦)

通過原始碼安裝 Ruby。下載最新的穩定版,解壓,然後執行:

$ ./configure
$ make
$ sudo make install

預設情況下,Ruby 安裝到 /usr/local 目錄。如果想使用其他目錄,可以把 --prefix=DIR 選項傳給 ./configure 指令碼。

因為無法使用任何工具來管理通過原始碼編譯安裝的 Ruby,所以使用第三方工具或者包管理器是更好的選擇。

5. 小結

在這一章我們學習了 Ruby 在各種系統中的安裝方法,接下來讓我們通過簡單的例子來了解 Ruby 的語法。