리액트 네이티브로 개발을 하는 와중에 팀원이 merge한 파일들을 pull 하면서 갑자기 build가 안 되는 에러가 발생했다.
구글링을 해보니 대부분이 그냥 cocoapods를 지웠다가 재설치하라는 내용이었는데 나한테는 전혀 도움이 되지 않았다.
스택오버플로우에서 실리콘 맥을 위한 설치 커맨드를 발견했다.
sudo arch -x86_64 gem install ffi
sudo arch -x86_64 gem install cocoapods
초반에는 잘되는가 싶더니 2.7.0 이상의 루비 버전이 필요하다는 에러가 뜨면서 설치에 실패했다.
덕분에 루비 버전 업데이트로 손쉽게 오류를 해결 할 수 있었다.
기존 설치 파일 제거
먼저 루비를 제거했다.
which -a ruby
위 커맨드로 설치되어있는 루비를 모두 확인하고
rm -rf <루비 설치 경로>
로 삭제 해주었다. 주의 할 점은 /usr/bin/ruby 이 경로에 있는 루비는 맥 os 내장이기 때문에 지우면 안 된다.
cocoapods도 제거를 하기 위해 아래 커맨드로 나오는 gem list를 모두 제거 해준다.
gem list --local | grep cocoapods
sudo gem uninstall cocoapods cocoapods-core
rbenv 설치
pyenv와 같은 개념으로 루비용 가상환경을 만들어 버전관리를 용이하게 해주는 툴이다. 홈브루로 설치해 주자.
brew install rbenv
.zshrc에 rbenv 설정을 추가해 주자
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
rbenv로 ruby 설치
rbenv install 3.2.2
rbenv global 3.2.2
꼭 3.2.2 버전일 필요는 없다. 에러에 명시된 대로 2.7.0 이상을 설치해 주면 된다. 설치 후 전역 설정을 해주었다.
터미널을 재시작 후 잘 적용이 되었는지 확인해 보자.
ruby -v
설치가 잘 완료된 것을 볼 수 있다.
cocoapods 재설치
gem install cocoapods -v 1.14.3
원래는 홈브루로도 설치가 가능하지만 나의 경우엔 팀원들과 버전을 통일시켜야 해서 gem으로 1.14.3 버전으로 설치를 해줬다.
pod install
ios 디렉토리로 이동 후 npx pod-install을 해줬다.
처음에 떴던 0 dependencies 가 89개로 바뀌면서 정상적으로 설치가 된 것을 볼 수 있다.
항상 개발환경 설정이 꽤나 많은 삽질과 시간을 요구하는데 정작 수년동안 기록을 해본 적이 없어 이제부터라도 남겨보고자 한다.
댓글