Apple Siliconを搭載したMacへのRubyのインストール方法
概要
従来のMacとは異なるCPUのアーキテクチャを採用したApple Siliconが公開されました。
ここでは、Apple Siliconのひとつである、M1チップを搭載したMacへRubyの環境をインストールしましたので、その方法を紹介します。
環境
- MacBook Pro M1 (2020)
- Ruby 3.1.2
インストール方法
Rubyのインストールには、rbenvを利用します。rbenvを使うことでバージョンの異なる複数のRubyをインストールしやすくなります。開発をする上で、バージョンが異なるRubyを実行したいということが時々あるので、これはとても便利です。
また、rbenvのインストールにはHomebrewを利用します。Homebrewを利用することで、rbenvのインストールが楽になります。
rbenvのインストール
Homebrewを利用してrbenvをインストールするために、ターミナルで次のコマンドを実行します。
brew install rbenv ruby-build
さらに、rbenvに関連する環境変数を設定します。設定のために、次のコマンドを実行します。私はターミナルのシェルとして、デフォルトのzshを利用しているので、.zshrcに書き込んでいます。もしもbashを利用している場合は.bashrcや.bash_profileに書き込んでください。
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.zshrc
source ~/.zsrhc
環境変数の設定を反映させるために、sourceコマンドを実行しています。
これで、rbenvの準備は終わりです。
Rubyのインストール
ここから、Rubyのインストールを行います。
Rubyのインストールの前に、rbenvでインストールできるRubyのバージョンを確認します。
rbenv install -l
2.6.10
2.7.6
3.0.4
3.1.2
jruby-9.3.6.0
mruby-3.1.0
picoruby-3.0.0
rbx-5.0
truffleruby-22.1.0
truffleruby+graalvm-22.1.0
Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all / -L' to show all local versions.
インストールできるバージョンを確認できます。ここに表示されているのは、メジャーバージョンごとの最新や、Rubyの種類ごとの最新のものです。一般的なRuby(CRuby)の他にもJavaで実行環境を利用するJRubyなどもインストール可能です。
ここでは、CRubyのバージョン3.1.2をインストールします。
rbenv install 3.1.2
Downloading openssl-3.0.5.tar.gz...
-> https://dqw8nmjcqpjn7.cloudfront.net/aa7d8d9bef71ad6525c55ba11e5f4397889ce49c2c9349dcea6d3e4f0b024a7a
Installing openssl-3.0.5...
Installed openssl-3.0.5 to /Users/ユーザー名/.rbenv/versions/3.1.2
Downloading ruby-3.1.2.tar.gz...
-> https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.2.tar.gz
Installing ruby-3.1.2...
ruby-build: using readline from homebrew
Installed ruby-3.1.2 to /Users/ユーザー名/.rbenv/versions/3.1.2
これで、Rubyのインストールは終わりです。インストールには5分ほどかかりました。
rbenvの仕組み上、インストール後には次のコマンドを実行する必要があります。このコマンドでは、RubyやRubyGemsに関連するコマンドを実行するときに、バージョン毎に異なる実行ファイルの場所から、適切な実行ファイルを選択するために実行します。
rbenv rehash
Rubyの利用
これまででRubyのインストールは終わりました。しかし、まだ利用できる状態ではありません。rbenvで利用するバージョンを指定する必要があります。
rbenvで利用できるRubyのバージョンは次のコマンドで確認できます。
rbenv versions
* system
3.1.2 (set by /Users/ユーザー名/.rbenv/version)
現在は、MacにデフォルトでインストールされているRubyが利用されています。そのため次のコマンドでRubyのバージョンを切り替えます。
rbenv global 3.1.2
これで、インストールしたRubyが利用できるようになりました。
ruby --version
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [arm64-darwin21]
バージョンの表記でarm64と記述されているため、Apple Silicon用のバイナリがインストールできているようです。
さいごに
今までのIntel製CPUを搭載したMacではなく、Apple SiliconであるM1チップを搭載したMacを利用したため、インストールでうまくいかないのではないかと思っていました。
しかし、実際にやってみると、従来と同じ方法でインストールできました。