Slate라는 API 사양서 관리 오픈 플랫폼을 설치 하려고 했을때 발생했는데, 꽤 골치 아팠던 경험이라 기록을 하기로 하였습니다.
문제의 결론은 MacOS에서 기본 설치되어 있는 시스템 Ruby를 사용하고 있기에 권한 문제로 발생하는 문제였습니다.
Slate의 샘플을 설치하여 테스트를 해보면 발생하는 것을 볼수 있습니다.
- Slate 가이드 안내 페이지
RubyGems를 설치하려고 하면 아래와 같이 에러가 발생할 것 입니다.
% gem install bundler
Fetching bundler-2.2.15.gem
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.
ruby버전을 변경하기 위해 rbenv를 사용하여 사용 버전을 변경하도록 하겠습니다.
Homebrew를 통해 설치하기
1. Homebew update
% brew update
2. rbenv install
% brew install rbenv ruby-build
3. rbenv install 확인하기
아래처럼 나온다면 설치가 완료된 것입니다. 그리고 현재 사용중인 버전은 맥북의 기본 system버전을 사용하고 있다는 것입니다.
% rbenv versions
* system (set by /Users/{사용자이름}/.rbenv/version)
4. rbenv를 이용해서 특정 버전의 ruby 설치하기
아래 코멘드를 입력하면 설치 가능한 버전 리스트가 나옵니다.(2021/04/07 기준)
저는 Slate를 설치하기 위한 목적이므로 2.7.2 버전을 설치하겠습니다. (Slate가 3.x 버전을 현재 기준으로 지원하지 않았습니다.)
% rbenv install -l
2.5.8
2.6.6
2.7.2
3.0.0
jruby-9.2.16.0
mruby-2.1.2
rbx-5.0
truffleruby-21.0.0
truffleruby+graalvm-21.0.0
5. ruby 2.7.2 버전 설치하기
% rbenv install 2.7.2
6. ruby 설치 확인하기
설치가 정상적으로 완료 되었다면 아래 처럼 나올 것 입니다.
% rbenv versions
* system
2.7.2 (set by /Users/{사용자이름}/.rbenv/version)
7. 디폴트 사용 ruby 버전 변경하기
디폴트로 system으로 설정 되어 있기 때문에 방금전 설치한 버전으로 지정해야 합니다.
변경후 다시 버전을 확인해 보면 2.7.2앞에 * 마크가 붙어 있는 것을 볼 수 있습니다. 변경완료!
% rbenv global 2.7.2
% rbenv versions
system
* 2.7.2 (set by /Users/{사용자이름}/.rbenv/version)
8. Path를 지정하기 위해 아래와 같이 코멘드를 입력합니다.
$ echo '# rbenv' >> ~/.bash_profile
$ echo 'export PATH=~/.rbenv/bin:$PATH' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
9. .bash_profile을 적용하기 위해 아래 코멘드를 실행 합니다.
$ source ~/.bash_profile
10. 이제 모든 설정이 완료 되었기 때문에 다시 ruby 패키지 매니저인 gem을 설치하면 성공될 것 입니다.
% gem install bundler
Fetching bundler-2.2.15.gem
Successfully installed bundler-2.2.15
Parsing documentation for bundler-2.2.15
Installing ri documentation for bundler-2.2.15
Done installing documentation for bundler after 3 seconds
1 gem installed
'Information Technology Memories' 카테고리의 다른 글
맥에서 MySQL 설치하기 (0) | 2021.04.18 |
---|---|
Forward Proxy 와 Reverse Proxy 차이 (0) | 2021.04.18 |
맥북(Mac Book)에서 세 손가락 드래그 하기 기능 활성화 하는 방법 (0) | 2018.01.09 |
티스토리 블로그 구글 검색 최적화를 위한 사이트맵 과 RSS 등록 하기 (0) | 2017.12.21 |
티스토리 블로그 구글 검색 등록 하기 (0) | 2017.12.21 |