Rubyのインストール
macにはrubyが既にインストールされている。
しかし、プロジェクト毎に使うRubyのバージョンは違うため、複数のRubyをインストールしておき、rbenvを使って切り替える必要がある。
使用環境 macOS catalina10.15.7
1. Command line tools
Homebrewを使うために必要。
XCode(iOS/MAC OS用アプリの統合開発環境 6GB程ある)をMac App Storeからインストールすると中に含まれているが、容量が大きいのでこちらの方法で行う
- Command line toolsをインストール
xcode-select --install
参考資料
Rails Girls インストール・レシピ
MavericksでCommand Line Tools for Xcodeをインストールする - Qiita
Xcodeをインストールする方法【iOSアプリの統合開発環境】 | TechAcademyマガジン
2. Homebrew
MacOS用のパッケージ管理システム(Package Manager)
rbenvをインストールするために必要
- Homebrewをインストールする
/user/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew doctor
Homebrewに問題がないか確認
Your system is ready to brew
と表示されればOKbrew update
Homebrewをアップデートし最新パッケージリストを取得する
Already up-to-date.
と表示されればOKbrew search パッケージ名
パッケージを検索するbrew install パッケージ名
パッケージをインストールするbrew uninstall パッケージ名
パッケージをアンインストールするbrew list
インストールされたパッケージのリストを表示するbrew upgrade
Homebrewのアップデートに加えて、Homebrewでインストールしたパッケージのアップデートも行うbrew -v
Homebrewのバージョンチェック/user/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
Homebrewとインストールしたパッケージのアンインストール
参考資料
MacにHomebrewを導入する方法 - Qiita
https://qiita.com/3yatsu/items/47470091277d46f3fde2
Command Line Tools のインストール
brewのupdateとupgradeの違い - Qiita
【簡単】MacにHomebrewをインストールする方法と基本的な使い方|新卒エンジニアの開発日記
3. rbenv
異なったバージョンのRubyを切り替えるソフトウェア
- rvenvをインストール
ruby-build(Rubyをインストールするrvenvのプラグイン)も同時にインストールされる
brew install rbenv
- シェルにrbenvを設定する(rbenvを使い始める準備をするが 、ターミナルを開く毎に必ず実行する必要があるので、シェルの設定ファイルに追記する)。
rbenv init
- ~/.zshrcに
eval "$(rbenv init -)"
を加える
- シェルを再起動する
- 適切にrbenvが設定されたか確認する
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | bash
- 公開されているRubyの安定版バージョンを表示する。
rbenv install -l
- Ruby公式サイトでもRubyの安定版最新バージョンを確認する。
- Rubyの安定版最新バージョンをインストールする
rbenv install 2.7.2
- Rubyの他の使いたい安定版バージョンをインストールする
rbenv install 2.6.6
- インストールされrbenvが知ってい全Rubyバージョンを表示する
現在アクティブなRubyバージョンには*が付いている
rbenv versions
- 現在アクティブなRubyバージョンを表示する
rbenv version
またはruby -v
- 使用するRuyのバージョンを切り替える
rbenv global 2.7.2
rbenv global と rbenv localの違い
fjordbootcampで質問し、回答いただき理解したことをまとめました。
rbenv global : 全体で有効になる
- 使用例
- 原則として安定版の最新バージョンのRubyを指定する
確認方法
- インストールされているRubyの各バージョンを確認
- 現在設定されているRubyの全体バージョンを確認する (「~/.rbenv/version」は全体バージョンの設定ファイル)
- rbenv globalでRubyの全体バージョンを変更する
- Rubyのバージョンが変わったことを確認する
rbenv local : 今いるディレクトリだけで有効になる
- 使用例
- プロジェクト毎に設定して、「このプロジェクトで使うRubyのバージョンはこれ」と固定する
確認方法
- 新しいディレクトリを作成し移動する
- 現在のRubyのバージョンを確認する(まだ、globalで設定されたバージョンが有効になっている)
- rbenv localでこのディレクトリでのRubyのバージョンを変更する 「.ruby-version」ファイル(このディレクトリだけで有効なバージョンが書き込まれている)が作成されている
- このディレクトリのRubyのバージョンが変更されたことを確認する
- homeディレクトリに戻り、Rubyの全体バージョンは変わっていないことを確認する
- new_dirに戻り、「.ruby-version」ファイルを消すと、new_dirディレクトリも再びRubyの全体バージョンに依存するようになる
参考資料
rbenv/rbenv: Groom your app’s Ruby environment
パッケージ管理システム Homebrew
Mountain Lion に rbenv を導入 - hrysd の旧ブログ
RVMからrbenvに乗り換えてRuby2.0.0-p0を入れる - 納豆には卵を入れる派です。
【macOS Sierra】Mac OSX 10.12 macOS Sierra にRuby + Rails4 開発環境の構築 【初心者必見】 - Qiita
Homebrew + rbenv 環境の Ruby を 2.1.0 に変更する | deadwood
Ruby バージョン変更に苦戦 | goemonhanaのブログ