[Ruby] Gem:FilePermissionError

1975 단어 rubyruby

Mac에서 Ruby의 패키지 매니저인 gem을 통해 설치를 진행하다가

다음과 같은 에러를 만났다.

해당 에러에 대해서 알아보니, 시스템 Ruby를 사용하고 있기 때문에, 권한이 없어 gem파일을 설치할 수 없다고 한다.

sudo를 통해 root 권한으로 실행하면 설치가 가능하지만, 보안상 이유로 권장하지 않는 설치법이다.
어쩐지 안되더라.

문제해결

brew를 통해 rbenv를 설치한다.

brew update
brew install rbenv ruby-build

rbenv를 설치 후 잘 되었는지 확인한다.

rbenv versions

현재 나는 ruby설치한 상태여서 2.7.2가 선택되어 있지만, (Gem::FilePermissionError)에러가 나온 경우는 system이 선택되어 있을 확률이 높다.

rbenv install -l //설치할 수 있는 Ruby 버전 확인

rbenv install x.x.x //원하는 버전 설치

위와 같이 설치한다.


install log

ruby-build: using openssl from homebrew
Downloading ruby-2.6.4.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.4.tar.bz2
Installing ruby-2.6.4...
Installed ruby-2.6.4 to /Users/idong-uk/.rbenv/versions/2.6.4

위와 같이 로그가 보이면서 설치가 완료된다.


글로벌 버전 설정

rbenz global x.x.x

설치한 버전으로 글로벌 버전을 변경한다.

마지막으로 rbenv PATH를 추가해야한다.
내 맥 쉘 설정 파일을 열어 다음의 코드를 추가한다.

쉘 설정 파일 열기(vim)

vim ~/.zshrc

.zshrc에 코드 추가

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

위와 같이 추가하였다면,

source ~/.zshrc

source 코드로 적용한다.

마지막으로 다시 gem install을 실행하면 끝 ~

좋은 웹페이지 즐겨찾기