Versucht man auf einem Apple M1 Homebrew zu installieren oder eine zuvor auf einem Intel Mac installierte Version von Homebrew auf einem neuen Apple M1 Gerät zu updaten, kommt man leider nur bis zu dieser Fehlermeldung:
Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)!
Homebrew erkennt korrekt die M1 / ARM Plattform und verweigert aus den folgenden Gründen den Dienst:
- Bei einer Homebrew-Neuinstallation findet es im Repositorium nur Pakete für Intel Chips.
- Beim Update einer bereits aus Intel-Paketen bestehenden Homebrew-Installation passt die ermittelte Plattform auch nicht.
Daher zieht Homebrew die Notbremse und steigt aus.
Homebrew auf Apple M1 lauffähig machen
Zuerst installieren wir Rosetta, welches die Intel Binaries auf dem M1 ARM Chip lauffähig macht:
1 |
/usr/sbin/softwareupdate --install-rosetta --agree-to-license |
Danach benutzen wir bei jedem Aufruf von Homebrew einen Parameter, der Homebrew davon abhält die Plattform automatisch zu ermitteln:
Anstatt zum Beispiel
1 |
brew install mtr |
schreiben wir
1 |
arch -x86_64 /usr/local/bin/brew install mtr |
Problem gelöst!
Aber es geht schöner …
Damit wir weiterhin wie gewohnt “brew” ansatt “arch -x86_64 /usr/local/bin/brew” benutzen können, fügen wir einen entsprechenden Alias zu unserer .bash_profile oder .zshrc hinzu:
1 |
alias brew="arch -x86_64 /usr/local/bin/brew" |
Dann noch einmal die Shell neu starten und alles läuft wieder wie gewohnt.
Happy brewing! :-)