오늘의 오류

[react-native 에러] in target 'FBReactNativeSpec' from project 'Pods'

애해 2022. 3. 11. 10:07
728x90

 

# 발생 상황

PhaseScriptExecution [CP-User]\ Generate\ Specs /Users/heespero/Library/Developer/Xcode/DerivedData/m1Test4-brhnauzjvbmnpvgsbwvisyoxwjxo/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/FBReactNativeSpec.build/Script-5F4C70EF7D90A5A5BDAEB404279F232A.sh (in target 'FBReactNativeSpec' from project 'Pods')

M1에서 react-native과 관련된 패키지를 설치하고 처음으로 IOS 빌드를 하려던 찰나에 해당 에러가 발생했다.  

 

# 발생 원인

cocoapods와 같은 react-native 관련 패키지는 brew를 통해 설치가 되는데 nvm으로 node 패키지를 설치한 경우  다른 패키지를 탐색하지 못하기 때문에 위와 같은 에러가 발생한다고 한다. 

 

# 해결 방안

1. node 패키지의 설치 경로 확인 

$ which node

필자의 경우 which node를 입력했을 때 /Users/[username]/.nvm/versions/node/v16.6.1/bin/node에 설치되어 있었다. 

/Users/[username]/.nvm과 같이 .nvm이 포함 된 경로로 node가 잡힌다면 필자와 같은 경우이다. 

 

2. .nvm폴더 삭제 

 

3. nvm과 관련된 환경변수 제거 

export NVM_DIR="$HOME/.nvm"
  [ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && . "/opt/homebrew/opt/nvm/nvm.sh"  # This loads nvm
  [ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && . "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm"  # This loads nvm bash_completi

필자의 경우 ./zshrc 파일에 환경 변수가 등록되어있었고 nvm과 관련된 부분을 제거한 후 수정된 파일을 바로 적용했다.  

$ source ~/.zshrc

4. brew를 통해 nvm 설치 

$ brew install node

nvm 재설치 후 경로는 /opt/homebrew/bin/node 로 변경되었고 빌드에 성공했다.  

 

# 참고 사이트 

https://www.univdev.page/posts/fbreactnativespec_issue/

 

반응형