React Native에서 재택근무 중 겪은 iOS 빌드 환경 문제
문제 상황
재택근무로 전환하면서 회사 맥미니 대신 개인 맥북으로 작업하게 되었다. 기존 프로젝트를 클론받아 실행하려는데 iOS 빌드에서 계속 실패했다.
The following build commands failed:
CompileC ... RCTWebSocket.o normal x86_64 objective-c
시도한 것들
처음에는 단순히 npm install만 다시 했는데 해결되지 않았다. React Native 0.61 버전을 사용 중이었고, Xcode는 11.3이었다.
결국 아래 순서로 완전히 정리하고 재설치했다.
# node_modules 완전 삭제
rm -rf node_modules
rm package-lock.json
# iOS 관련 정리
cd ios
rm -rf Pods Podfile.lock
rm -rf ~/Library/Developer/Xcode/DerivedData
# 재설치
cd ..
npm install
cd ios
pod install
원인
개발 환경마다 node 버전, CocoaPods 버전이 달랐던 게 문제였다. 회사 맥미니는 node 12.14, 개인 맥북은 13.10이었다.
팀 내에서 .nvmrc 파일을 추가해 node 버전을 통일하고, Podfile.lock은 git에 포함시키기로 했다.
교훈
재택근무 환경에서는 개발 환경 동기화가 더 중요하다는 걸 느꼈다. 사무실에서는 바로 물어보고 해결할 수 있었던 것들이 이제는 문서화되어 있어야 한다. README에 정확한 설치 가이드와 버전 정보를 추가했다.