gem をインストールしようとしたら
とエラーが出てしまいました。
要するに Mac OS のシステムで使ってる Ruby を参照してるので、
インストールなどの書き込み権限がありませんよ。
…ということみたいです。
どの Ruby を参照しているか確かめる。
試しにターミナルから
$ which ruby
とか
$ which gem
とか打ち込んでみると
/usr/bin/ruby
/usr/bin/gem
とシステムのパスが返ってきます。
過去記事で書いたとおり
私は rbenv で Ruby のバージョンを管理してるので、
本来は
を参照している必要があります。
rbenv で 管理している Ruby を参照するようにする
というわけで参照先を変更します。
ターミナルで以下を打ち込むと
$ rbenv init
以下のように表示されます。
# the following to ~/.bash_profile:eval “$(rbenv init -)”
で、この後 ~/.bash_profile に
eval “$(rbenv init -)” を追記するのですが、
私は vim がよくわからんので、
使い慣れてるテキストエディタの VS Code で編集しました。
ターミナルから、vim で編集するって方は
$ vim ~/.bash_profile
テキストエディットで開く! って方は
$ open ~/.bash_profile
VS Code で編集したい! って方は
$ code ~/.bash_profile
Atom を使うって方は
$ atom ~/.bash_profile
と入力してください。
.bash_profile が開いたら
eval "$(rbenv init -)"
を下の方にコピペします。
ちなみにコピペ後の.bash_profileは、
私の場合はこんな感じです。
# The original version is saved in .bash_profile.pysave
PATH=”/Library/Frameworks/Python.framework/Versions/3.8/bin:${PATH}”
export PATH
# rbenv
eval “$(rbenv init -)”
最後の方にちょこんと入れてあります。
確認
無事パスが通ったか、確認。
ターミナルにまた以下のコマンドを打ち込みます。
$ which ruby
$ which gem
これでそれぞれ
/Users/○○/.rbenv/shims/gem
と返ってきたら成功です。
原因
明らかに、これですね↓
ターミナルに変な表示が出るようになって
eval "$(rbenv init -)"
を含む行をいくつかバッサリ削除して爽快感を満喫したせいです。
間抜けですが、またひとつ勉強になりました。
参考リンク gem installでpermissionエラーになった時の対応方法 – Qiita
参考リンク MacのターミナルでRubyをバージョンアップする方法 – Qiita
参考リンク Ruby – rubyの環境構築ができない|teratail
コメント