[React Native] Command PhaseScriptExecution 오류

2021년 7월 23일

스터디에서 사용할 React Native 환경을 설정하기 위해 오랜만에 현재 PC들에 설정하고 있었습니다. 늘 그래왔듯 한 번에 되지는 않았고 여러 문제와 함께하고 있습니다.

처음에는 맥의 M1 환경에서 진행을 시작하였지만, 이것이 M1으로 인한 문제인지 판단을 할 수 없어 기존 환경으로 돌아와서 설정을 진행하였습니다. Lerna을 이용한 설정 및 해결 가능한 문제들을 제거하고 나니 npm run ios을 실행할 경우는 아래의 오류가 발생했지만 npx react-native run-ios을 실행할 때는 정상적으로 동작하는 문제에 봉착하였습니다.

Command PhaseScriptExecution failed with a nonzero exit code

** BUILD FAILED **


The following build commands failed:
	PhaseScriptExecution [CP-User]\ Generate\ Specs /...user/Developer/Xcode/DerivedData/app-fqangixwmexpoocqlryzliqmfghj/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/FBReactNativeSpec.build/Script-A5D15BFD2232DC7424A883B384E62144.sh
(1 failure)

해당 내용으로 검색해서 이런저런 시도를 해봤지만 좀처럼 해결되지 않았습니다. 다른 이유로도 해당 오류가 발생할 수도 있겠지만, 제 경우는 Homebrew로 설치한 nvm으로 설치된 nodeyarn으로 설치된 /usr/local/bin/node, 두 node가 함께 있어 발생한 문제였습니다. 이는 아래의 명령어를 통해 확인하실 수 있습니다.

/usr/local/bin/node -v
node -v

/usr/local/bin/node 명령어가 없다면 아래 방식으로 진행할 필요 없이 ln -s $(which node) /usr/local/bin/node 명령어로 심볼릭 링크를 생성해주시면 됩니다.

저는 빙빙 돌아왔지만 nvm에 올라와 있는 이슈의 댓글을 참고하여 다음과 같은 방식으로 해결하였습니다.

  1. 설치된 npmyarn을 모두 제거한다.
brew uninstall npm 
brew unistall yarn
brew unistall node

npm uninstall yarn

npm도 삭제가 필요하다면 이 글을 확인하여 삭제한다.

  1. which npm를 통하여 npm이 제대로 nvm을 사용하고 있는지 확인한다.
/Users/.../.nvm/versions/node/v14.16.0/bin/npm
  1. 확인되었다면 전역으로 yarn을 설치한다.
npm install -g yarn

저는 해당 방식으로 깔끔하게 해결되어 정상적으로 동작하는 것을 확인하였습니다. 여러분의 문제도 잘 해결되길 바라봅니다.

Recently posts
© 2016-2023 smilecat.dev