Niedawno próbowałem zainstalować QEMU na moim Macu M1, ale otrzymałem błąd „Nie można zainstalować w Homebrew na procesorze ARM w domyślnym prefiksie Intela”.
Oto jak rozwiązałem ten problem.
Błąd
Oto kod, który uruchomiłem, który spowodował błąd:
brew install qemu
Na początku zaczął aktualizować Homebrew i myślałem, że wszystko jest w porządku.
Ale potem pojawił się błąd:
Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)! Please create a new installation in /opt/homebrew using one of the "Alternative Installs" from: https://docs.brew.sh/Installation You can migrate your previously installed formula list with: brew bundle dump
Przyczyna
Czytając ten błąd, mogłem stwierdzić, że prawdopodobnie był on związany z faktem, że teraz używam komputera Mac M1 zamiast mojego starego Maca z procesorem Intel.
Zgodnie z dokumentacją Homebrew, domyślny skrypt instalacyjny Homebrew instaluje Homebrew z preferowanym przedrostkiem, którym jest /usr/local
dla macOS Intel i /opt/homebrew
dla Apple Silicon (i /home/linuxbrew/.linuxbrew
dla Linuksa).
W moim przypadku wcześniej przywróciłem kopię zapasową Time Machine z mojego komputera Intel Mac na komputerze M1 Mac.
Tak więc w moim przypadku na moim Macu M1 działała instalacja Homebrew firmy Intel.
Rozwiązanie
Na szczęście rozwiązanie było proste. Po prostu uruchomiłem kod instalacyjny wymieniony na stronie głównej Homebrew (pod nagłówkiem Zainstaluj Homebrew).
Dlatego uruchomiłem następujące:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
To dało następujące wyniki:
==> This script will install: /opt/homebrew/bin/brew /opt/homebrew/share/doc/homebrew /opt/homebrew/share/man/man1/brew.1 /opt/homebrew/share/zsh/site-functions/_brew /opt/homebrew/etc/bash_completion.d/brew /opt/homebrew ==> The following new directories will be created: /opt/homebrew/bin /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks ==> The Xcode Command Line Tools will be installed. Press RETURN to continue or any other key to abort
Więc poszedłem dalej i kontynuowałem instalację.
Krótko mówiąc, zainstalował Homebrew w /opt/homebrew/
katalogu, na korzyść mojego M1 Mac.
Kiedy to uruchomiłem, skorzystałem z porady zawartej w komunikacie o błędzie i uruchomiłem następujące polecenie, aby przeprowadzić migrację mojej poprzednio zainstalowanej listy formuł:
brew bundle dump
Gotowe.
Zauważyłem, że komunikat o błędzie sugeruje użycie jednej z „instalacji alternatywnych”, ale wygląda na to, że domyślny skrypt instalacyjny obsługuje teraz komputery Mac M1 bez konieczności przeprowadzania instalacji alternatywnej.
Jeśli utknąłeś w punkcie „Nie można zainstalować w Homebrew na procesorze ARM z domyślnym prefiksem Intel (/usr/local)! ” błąd, mam nadzieję, że to pomoże!