0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

brewでインストールしたrubyの管理方法

Last updated at Posted at 2025-08-03

やりたかったこと

shell上でバージョン2.6.5のrubyをつかえるようにする(5年以上まえです)

引っかかった点

標準で設定されていた2.5.0を削除したらOSの標準rubyバージョンが有効になってしまい、homebrewのでDLした最新のrubyのバージョン2.6.5をshellの標準のrubyバージョンとして設定するのに苦労した

解決方法

zshrcにPATHを設定することでshell(zsh)利用時に適用するrubyのバージョンを管理する

流れリスト

  1. rbenvを使用しようとしたがやめた
  2. ruby使用方法は約4パターン、用途別比較
  3. homebrewでrubyのバージョンをアップグレードする
  4. 環境変数をセットするexportコマンドを用いて、インストールしたrubyをshell(zsh)で使用できるようにする
  5. shell(zsh)でデフォルトで使うrubyバージョンを2.6.5に設定するため、zshrcにPATHを設定する
  6. VSCodeでcodeコマンドを有効にした

1. rbenvを使用しようとしたがやめた

homebrewでrubyをインストールしていたため、homebrewでrubyのバージョンをアップデートしようとググってみたら、rbenvというものをインストールする手順が沢山出てきた。
一旦手順通りにrbenvをインストールする方向で進んだ。
(※rbenvとは:複数のRubyのバージョンを管理し、プロジェクトごとにRubyのバージョンを指定して使うことを可能としてくれるツールのこと)
しかしそこまで複数のバージョンを管理する必要が無いので不要と判断。
普通にhomebrewでupgradeすることに決めた。

2. ruby使用方法は約4パターン、用途別比較

パターン1 : OSにインストールされているrubyを使用する

メリット

  • インストールする手間が省ける
  • 標準設定されているので、設定しなくてもどこでも使える

デメリット

  • macOSのバージョンアップをしないとrubyのバージョンも上がらない(Mojaveのrubyはバージョン2.5.0)

パターン2 : rubyの公式サイトから、最新のrubyをインストールする

メリット

  • brewなどのパッケージマネージャーを入れていなくてもインストールできる
  • 最新のバージョンが速攻で手に入る
    デメリット
  • 自身でコンパイルなどして設定する必要があるため、手間がかかる

パターン3 : homebrewでインストールする

メリット

  • 簡単
  • 割とすぐに最新のバージョンが手に入る
    デメリット
  • 複数のrubyのバージョンを共存させるのが面倒
  • 完全に最新のものが手に入るわけではなく、動作が安定しているバージョンが手に入る

###パターン4 : rbenvを使用する(rbenvはhomebrewなどからインストールする必要がある)
メリット

  • 複数バージョンのrubyがインストールできる
  • 最新のrubyが手に入る
  • PJ毎にrubyのバージョンを使い分けの設定などがしやすい
    デメリット
  • インストールや初期設定などが面倒
  • 管理(マッピング)が少し大変

3. homebrewでrubyのバージョンをアップグレードする

先ずは現在shell(zsh)で使用しているrubyのバージョンを確認する

$ ruby -v 

必要な場合はrubyの情報を確認しておく

$ brew info ruby

最新のrubyをインストールする

$ brew upgrade  ruby

アップデートできたら再び$ ruby -vでバージョンを確認する。
するとバージョン2.5.0のまま、新しいバージョン2.6.5になっていない。
確認するとupgrade時に下記のエラーが表示されていた。
「OSに入っているruby2.5.0が標準設定されているので、新しい2.6.5は標準設定できなかったよ」みたいな感じのエラーらしい。

The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/bundle

上書きをした時にどうなるかの仮実行コマンドで、変更後どうなるかを確認できるので実行してみる

$ brew link --overwrite --dry-run ruby
#would remove 2.5.0 みたいな感じで確認される(ログ消えた)

2.5.0は削除したいので、下記のコマンドを実行する

$ brew link --overwrite ruby

改めて$ ruby -v
なんと、まだOSのruby2.5.0が表示される。

4. 環境変数をセットするexportコマンドを用いて、インストールしたrubyをshell(zsh)で使用できるようにする

PATHの設定をする

export PATH="/usr/local/opt/ruby/bin:$PATH"

いざ!

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

しかし新しいタブを開き$ ruby -vすると、また2.5.0に戻っている

5. shell(zsh)でデフォルトで使うrubyバージョンを2.6.5に設定するため、zshrcにPATHを設定する

zshの設定ファイルである、.zshrcを編集する必要がでてきた。
vimは苦手なので(←いつか練習)VSCodeで編集するよ。
codeコマンドで指定したエディタがVSCodeでたちあがるよ。

$ code .zshrc 
zsh: command not found: code

おうふ
VSCode側の設定が必要だよ

手順:

  • 表示 > コマンドパレット > 「shell」で検索 => シェルコマンド:'code'コマンドをインストールします**
$ code .zshrc 

VSCodeで開けたので、zshrcを編集していくマン
User configuration 以降がユーザ設定(自由エリア)だと聞いたのでその真下に書いた

# User configuration

# brewでインストールしたrubyのVersionをデフォルトで指定
export PATH="/usr/local/opt/ruby/bin:$PATH"

# export MANPATH="/usr/local/man:$MANPATH"

zshの設定ファイルである、.zshrcをcatコマンドで確認することもできる。

$ cat .zshrc

これでshell上でバージョン2.6.5のrubyがつかえるようになった。
めでたい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?