카테고리 없음

Ruby버전 업데이트

jjjkh 2024. 5. 3. 19:49

cocoapods버전 엡데이트 실패

카카오 소셜 로그인을 구현하기 위해 KakaoSDK를 install 했는데 cocoapods버전이 낮아서 실패..

그래서 sudo gem install cocoapods를 이용해서 cocoapods 업데이트를 시도했지만 이것도 실패....

이유는 Ruby버전이 2.7.0. 이상을 요구하는데 현재 버전이 낮아서였다. (아래와 같은 에러)

ERROR:  Error installing cocoapods:

The last version of drb (>= 0) to support your Ruby & RubyGems was 2.0.6. Try installing it with `gem install drb -v 2.0.6` and then running the current command again

drb requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210.

그래서 구글링을 통해 Ruby버전을 올리는 방법을 찾아보았습니다.

다른 방법도 많이 있겠지만 선택한 방법은 homebrew를 통해 rbenv를 다운하고 rbenv를 통해 Ruby버전을 다운받고 연결해주는 방법을 선택했습니다.

homebrew를 이용해 Ruby버전 업데이트(터미널 사용)

homebrew는 다운로드된 상태이기 때문에 

brew update를 통해 최신버전으로 업데이트 시켜주고

brew install rbenv로 최신 버전의 rbenv를 설치해준다.

rbenv install -l으로 설치할 수 있는 Ruby를 확인하고 필요한 버전을 업데이트 해주면 됩니다.

저는 2.7.0.이상의 버전이 필요했기때문에 3.0.7의 버전으로 업데이트를 해주었습니다.

rbenv install 3.0.7

rbenv이 설치가 되었다면 rbenv versions으로 버전을 확인해보면 

 rbenv versions
* system
  3.0.7

이런 식으로 되어있을 것이다. 그건 os에 설치되어있는 ruby로 연결되어 있다는 뜻이기 때문에 rbenv로 설치한 ruby로 연결해줘야 한다!

rbenv global 3.0.7을 이용해서 rbenv로 설치한 ruby로 연결해주면 된다.

그러고 rbenv versions을 해보면 

 rbenv versions
  system
* 3.0.7

으로 바뀐것을 확인할 수 있다.

그러고 sudo gem install cocoapods를 이용해서 cocoapods을 업데이트 하면 되지만 다시 처음과 같은 에러가 발생했다.

다시 구글링을 해본 결과  rbenv versions버전과  rbenv --versions으로 확인한 버전이 다른 경우라면 버전이 바뀌지 않았다는것을 알게 되었다. 이런 경우에는 환경변수 설정이 필요하다고 한다.

 

rbenv versions버전과  rbenv --versions이 다른경우 

방법은 간단한데 rbenv init을 실행하고 마지막 줄의 내용을 .zshrc파일에 추가하면 된다.

표시된 마지막줄

터미널을 이용하여 .zshrc 파일에 내용을 추가하는 방법도 있지만 직접 파일을 열고 추가를 해보았다

.

.zshrc파일은 사용자 위치에 숨겨져있기때문에 shift+command+. 을 이용해서 .zshrc파일에 접근해서 내용을 추가해주고 저장을 하면 된다.

그러고 터미널을 재실행 후 확인해보면 두 버전이 일치하는 것을 확인할 수 있다.

그 후 cocoapos를 업데이트 했더니 성공했다.

 

 

느낀점 

처음 cocoapos 업데이트 시도 시 에러로 당황을 했지만 에러 메시지를 확인하고 문제점을 파악을 했기 때문에 문제 상황을 해결할 수 있었던 것 같다. 앞으로 다른 부분에서도 에러가 나오면 에러 메시지를 꼼꼼히 확인하는 습관을 길러야겠다.