Skip to content

MacにRubyをインストール

rbenvでrubyをインストールします。

rbenvのインストール

% brew install rbenv

インストールが完了したらinitします。

% rbenv init
# Load rbenv automatically by appending
# the following to ~/.zshrc:

eval "$(rbenv init -)"

% rbenv -v
rbenv 1.1.2-34-g0843745

これで使用は開始できますが、上記のコメントにあるようにお使いのシェルに登録しておきます。

% echo 'eval "$(rbenv init -)"' >> ~/.zshrc

インストール時に出てくるOpenSSLのメッセージについて

rbenvのインストール完了時に何やらメッセージが出てきます。(2020-09現在の情報です)

ruby-build installs a non-Homebrew OpenSSL for each Ruby version installed and these are never upgraded.

To link Rubies to Homebrew's OpenSSL 1.1 (which is upgraded) add the following
to your ~/.zshrc:
  export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@1.1)"

Note: this may interfere with building old versions of Ruby (e.g <2.4) that use
OpenSSL <1.1.

ruby-buildの際にHomebrewのopensslに依存しなくなったようで、rubyのインストールの際にopensslをコンパイルする仕様になったようです。

これはインストールするrubyに都度適切なバージョンを選択するためのようですが、Homebrewでインストールしたopensslを使いたければ予め環境変数を出しておきましょう、というメッセージのようです。

export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@1.1)"

Homebrewのopensslを使う方がコンパイル時間が減る分インストール速度は上がりますので、問題ない場合はお使いのシェルで出力しておくと良いと思います。

% echo 'export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@1.1)"' >> ~/.zshrc
% source ~/.zshrc

rubyのインストール

% rbenv install -l
2.5.8
2.6.6
2.7.1
jruby-9.2.13.0
maglev-1.0.0
mruby-2.1.2
rbx-5.0
truffleruby-20.2.0
truffleruby+graalvm-20.2.0

Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all' to show all local versions.

今回はこの中から2.7.1を入れます。

% rbenv install 2.7.1
Downloading ruby-2.7.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.1.tar.bz2
Installing ruby-2.7.1...
ruby-build: using readline from homebrew
Installed ruby-2.7.1 to /Users/foobar/.rbenv/versions/2.7.1
% rbenv global 2.7.1

#新規ターミナルを開いた際にバージョンが変わっていると思います
% ruby --version
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-darwin19]