어느 날 부턴가 터미널에 /opt/homebrew/bin/brew 디렉토리가
없다는 명령어가 뜨기 시작했다.
.zprofile:1: no such file or directory:/opt/homebrew/bin/brew
원인을 알아보니 m1 맥북 초기에 homebrew를 완전히 지원하지 않았을 때
로제타로 인텔 버전을 다운 받았을 경우,
구 버전(user/local/bin/brew)의 디렉토리에서
신 버전(/opt/homebrew/bin/brew)을 찾기 때문에 발생하는 오류 문구 같았다.
30분의 고전 끝에 해결방안을 찾았다.
나의 경우 기존 로제타 버전으로 쓰고 있었고,
단순히 삭제했다 신버전을 깔아도 계속 구버전으로 PATH가 설정되었다.
또 -p 옵션으로 path를 설정해주니 그 다음부턴
permission denied: /opt/homebrew/bin/brew
이 문구가 떴다.
(아무리 권한 설정해도 해결 안됨. 우선 순위에서 밀려난듯
설치했던 패키지 리스트들을 백업한다.
/usr/local/homebrew/bin/brew bundle dump
기존 homebrew 삭제
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
설치 전에 디렉토리를 만들고 권한 설정
sudo mkdir -p /opt/homebrew
sudo chown -R ${whoami} /opt/homebrew
$(whoami) 👈🏻 이부분 그대로 치면 됨
opt로 이동 후 새 homebrew 설치
cd /opt
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew
환경 변수 설정
vi ~/.zshrc
export PATH="/opt/homebrew/bin:$PATH"
vim으로 들어가면 비어있을 것이다.
i를 통해 입력모드로 전환하자.
환경 변수를 다 입력하면 esc로 입력모드 종료 후 : 누른 후 wq!로 저장해주면 된다.
쓰기 권한이 없을 때 생기는 오류.
:w !sudo tee % > /dev/null
여전히 안된다면
q!를 통해 종료해주면 왜인지 모르게 환경변수가 올바르게 설정되어 있다.
:q!
환경 변수 확인
which brew
했을 때 opt/homebrew/bin/brew
로 잘 나온다면 성공!
brew install rbenv
Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)
뜬다면 로제타 2 관련 오류
arch -arm64 brew install rbenv
👍
덕분에 수월하게 수정했습니다. 감사합니다~!