Ruby 버전 업데이트 방법 in MacOS

MacOS에서 Ruby 버전을 업데이트하는 방법을 알아봅니다.
Posted on 2022-02-14 by GKSRUDTN99
MacOS Mac Ruby

Homebrew 설치

터미널을 열고 아래 명령어를 붙여넣기합니다.

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

설치가 완료된 뒤 터미널에서 brew --version 명령어를 통해 설치가 완료되었음을 확인할 수 있습니다.

$ brew --version
Homebrew 3.3.10
Homebrew/homebrew-core (git revision 55aa98ff208; last commit 2022-01-17)
Homebrew/homebrew-cask (git revision 539020232e; last commit 2022-01-17)

Homebrew를 통해 rbenv1 설치

brew update를 통해 Homebrew가 최신 버전으로 업데이트 되도록 합니다.

$ brew update

brew install rbenv로 가장 최신 버전의 rbenv를 설치합니다.

$ brew install rbenv

rbenv를 통해 Ruby 설치

아래 명령을 통해서 rbenv로 설치할 수 있는 Ruby 버전을 확인합니다.

$ rbenv install -l
2.6.9
2.7.5
3.0.3
3.1.0
jruby-9.3.3.0
mruby-3.0.0
rbx-5.0
truffleruby-22.0.0.2
truffleruby+graalvm-22.0.0.2

Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all / -L' to show all local versions.

리스트에 있는 버전들 중에서 하나를 골라 설치합니다.

2.x.x 대의 버전에서 가장 최근 버전으로 설치하면 괜찮은 것 같습니다.

단, 반드시 2.5.0 이상의 버전을 설치해야 합니다.

$ rbenv install 2.7.5

설치가 완료된 뒤, rbenv versions를 통해 현재 기기에 설치된 Ruby들의 버전을 확인할 수 있습니다.

$ rbenv versions
* system
  2.7.5

위에서 확인할 수 있듯이, 아직 ruby는 기존 OS에 설치된 ruby(system)을 가리키고 있습니다.

$ which ruby
/usr/bin/ruby

아래 명령을 통해 기본적으로 PowerShell이 열리면 rbenv에 설치된 ruby를 가리키도록 바꿔줍니다.

$ rbenv global 2.7.5

바뀐 루비 버전을 확인합니다.

$ ruby --version
ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-darwin20]

설치 시 발생할 수 있는 문제들

rbenv global 명령을 실행 후에도 ruby 버전이 바뀌지 않는 경우


rbenv global 명령을 실행하고, rbenv versions를 통해 확인한 버전과, ruby --version으로 확인한 버전이 다른 경우가 있습니다.

$ rbenv versions
* system
  2.7.5

$ rbenv global 2.7.5

$ rbenv versions
  system
* 2.7.5 (set by /Users/hangyeongsu/.rbenv/version)

$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin20]

$ which ruby
/usr/bin/ruby

이 경우 환경변수 설정이 필요합니다.

rbenv init을 실행하고, 출력되는 eval~ 줄을 2번째 줄에 표시되는 파일 뒤에 붙여넣습니다.

$ rbenv init
# Load rbenv automatically by appending
# the following to ~/.zshrc:

eval "$(rbenv init - zsh)"

위의 경우, ~/.zshrc 파일에 vim등의 도구를 통해 마지막 줄을 붙여넣습니다.

위 내용을 붙여넣은 뒤, 터미널을 재실행하면 ruby 버전이 잘 적용되는 것을 확인할 수 있습니다.

$ rbenv versions
  system
* 2.7.5 (set by /Users/hangyeongsu/.rbenv/version)

$ ruby --version
ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-darwin20]

$ which ruby
/Users/user/.rbenv/shims/ruby





1: Ruby Version 관리 툴




...
Anonymous    Nov. 12, 2022, 1:57 p.m.

환경변수 설정까지 하였음에도 루비버전이 다른 경우는 어떻게 해야할까요 ㅠ.ㅠ

...
gksrudtn99    Nov. 25, 2022, 12:08 p.m.

1. rbenv versions
2. ruby --version
3. which ruby
위 세가지 명령을 터미널에서 실행했을 때 어떻게 표시되는지 알려주실 수 있을까요?

Updated: Nov. 25, 2022, 12:10 p.m.

...
Anonymous    Nov. 27, 2022, 12:30 p.m.

환경 변수 설정이 다를 경우, source .zshrc로 적용시켜주면 되네요.

...
Anonymous    Nov. 27, 2022, 5:45 p.m.

혹시 윗분 해결하셨나요?? ㅠㅠ 저도 환경변수까지 설정했는데 안되네요..

...
Anonymous    Nov. 28, 2022, 8:30 a.m.

본문에서는 터미널을 한번 끄고 재실행하여 .zshrc 파일을 읽어오도록 설명했는데요,
해결하신 것 처럼 source .zshrc를 통해 직접 읽어오는 방법도 있습니다.

...
Anonymous    March 5, 2023, 4:36 a.m.

훌륭합니다.

...
Anonymous    April 19, 2023, 6:10 a.m.

진짜 너무감사합니다 저 자살할뻔했는데 덕분에 살았어요

...
Anonymous    April 26, 2023, 2:06 p.m.

덕분에 문제가 해결되었습니다.
감사합니다. ^^

...
Anonymous    June 1, 2023, 8:30 p.m.

환경변수 설정 했는데도 업데이트가 안돼서 터미널 완전히 끄고 확인하니 바껴있네요 너무 감사합니다 ^^

...
Anonymous    Oct. 13, 2023, 11:32 a.m.

You saved my time

...
Anonymous    Dec. 26, 2023, 7:17 p.m.

ruby --version 업데이트 안되시면 zshrc 파일 안에
eval "(rbenv init - zsh)" 넣으시면 됩니다!

...
Anonymous    March 6, 2024, 4:39 p.m.

덕분에 해결되었습니다 감사합니다

...
Anonymous    March 14, 2024, 10:21 p.m.

감사합니다. 덕분에 한번에 됐어요.

...
Anonymous    March 24, 2024, 7:40 p.m.

감사합니다
덕분에 해결 되었어요

...
Anonymous    March 30, 2024, 1:27 p.m.

감사합니다~!