Apple Silicon(M1, M2)에서 NVM에서 node 특정 버전이 설치 되지 않는 이슈 대응하기

Jocy·2023년 6월 22일

M1에서 NVM에서 node 특정 버전이 설치가 안됨

Apple Silicon(M1,M2등)에서 NVM을 사용하다보면 Node14버전이나 특정 버전들이 설치가 되지 않으면서 아래의 메시지가와 함께 무한에 가까운 수준으로 터미널에 텍스트가 출력되게 된다.

curl: (22) The requested URL returned error: 404

Binary download from https://nodejs.org/dist/v14.21.3/node-v14.21.3-darwin-arm64.tar.xz failed, trying source.
grep: /Users/XXXX/.nvm/.cache/bin/node-v14.21.3-darwin-arm64/node-v14.21.3-darwin-arm64.tar.xz: No such file or directory
Provided file to checksum does not exist.
Binary download failed, trying source.
Clang v3.5+ detected! CC or CXX not specified, will use Clang as C/C++ compiler!
Local cache found: ${NVM_DIR}/.cache/src/node-v14.21.3/node-v14.21.3.tar.xz
Checksums match! Using existing downloaded archive ${NVM_DIR}/.cache/src/node-v14.21.3/node-v14.21.3.tar.xz
$>./configure --prefix=/Users/XXXX/.nvm/versions/node/v14.21.3 <
Node.js configure: Found Python 3.9.6...
INFO: configure completed successfully

Homebrew로 NVM 설치 및 기본 세팅

이러한 CPU 관련 문제는 대부분 해결하는 방법이 비슷하다. 바로 Rosetta를 통해서 해결하는 것이다.
이에 앞서 차례대로 homebrew를 통해 nvm을 설치하고 Rosetta를 적용하는 방법을 서술하려고 한다.

# 1. homebrew를 이용해서 nvm을 설치
brew install nvm

# 2. nvm 디렉토리 생성
mkdir ~/.nvm

# 3. vim, nano, vscode 에디터를 활용하여 ~/.zshrc 경로에 있는 파일에 아래의 내용 추가
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_completion

# 4. 변경사항 반영하여 실행하기 위해 터미널에 명령어 입력
source ~/.zshrc

이렇게 세팅하고 nvm install v14.21.3을 설치 명령어를 실행 해보면 아래와 같은 문구와 함께 엄청난 텍스트가 무한반복되며 출력된다. 이 문제를 해결하기 위해서 터미널을 Rosetta를 사용하여야 한다.

Rosetta를 사용하여 열기


위와 같은 그림으로 세팅하면 정상적으로 설치되는 것을 볼 수가 있다.

profile
Software Engineer

0개의 댓글