LoginSignup
0
0

gem install 時の permissions エラーの対応

Posted at

いまさらながらGithub Pagesでプロフィールでも整備するかと思い立ち、おもむろにgem install したらpermissions error に遭遇しました。

% gem install bundler jekyll
Fetching bundler-2.5.9.gem
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.

下の記事によるとどうやらシステムのrubyを利用していると、権限不足でgemのインストールができないというエラーのようです。

ということで、gem install bundler jekyll ができるところまで手順を残しておきます。

  • 環境
    macOS Ventura

現状確認

% which gem
/usr/bin/gem
% which ruby
/usr/bin/ruby

rbenvでrubyを管理する

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

# brew update
% brew update

# rbenvのインストール
% brew install rbenv ruby-build

# 現在利用しているバージョンの確認
% rbenv versions
system

現在はシステムにインストールされている環境を使用しているようです。
rbenvの管理下に安定版のrubyをインストールします。

% rbenv install -l
3.0.7
3.1.5
3.2.4
3.3.1
jruby-9.4.6.0
mruby-3.3.0
picoruby-3.0.0
truffleruby-24.0.1
truffleruby+graalvm-24.0.1

現在(2024/4/26)はバージョン3.3.1が安定版として提供されているようです。
3.3.1をインストールします。

#ruby 3.3.1のインストール
% rbenv install 3.3.1

# バージョンの確認
% rbenv versions     
* system
  3.3.1

3.3.1をglobalでしようするように変更します。

# バージョンの切り替え
% rbenv global 3.3.1

# 確認
% rbenv versions    
  system
* 3.3.1 (set by /Users/unsername/.rbenv/version)

rbenvにパスを通すため、シェルの設定ファイル(.bashrcや.zshrc)に以下を追加します。

vim ~/.zshrc

追加内容

[[ -d ~/.rbenv  ]] && \
  export PATH=${HOME}/.rbenv/bin:${PATH} && \
  eval "$(rbenv init -)"

vimの操作については下記を参考にします。
https://qiita.com/hide/items/5bfe5b322872c61a6896

確認

シェルを再起動して、rubyとgemのパスを確認してみます。

% which ruby 
/Users/username/.rbenv/shims/ruby
% which gem 
/Users/username/.rbenv/shims/gem

先ほどインストールしたruby3.3.1のパスになっています。

gem install

gem installに再チャレンジ

$ gem install bundler jekyll

 ...gems installed

gem installができるようになりました!
ほとんど参考にさせていただいた記事を同じ内容になりました。現在もこの対応で良さそうです。

プロフィール作る作業に戻ります。

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