Ich habe kürzlich versucht, QEMU auf meinem M1-Mac zu installieren, habe aber den Fehler „Kann nicht in Homebrew auf ARM-Prozessor in Intel-Standardpräfix installieren“ erhalten.
So habe ich das Problem behoben.
Der Fehler
Hier ist der Code, den ich ausgeführt habe und der zu dem Fehler geführt hat:
brew install qemu
Zuerst fing es an, Homebrew zu aktualisieren, und ich dachte, alles wäre in Ordnung.
Aber dann bekam ich den Fehler:
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
Die Ursache
Ich konnte durch Lesen dieses Fehlers feststellen, dass er wahrscheinlich damit zusammenhängt, dass ich jetzt einen M1-Mac anstelle meines alten Intel-basierten Mac verwende.
Laut der Homebrew-Dokumentation installiert das standardmäßige Homebrew-Installationsskript Homebrew mit seinem bevorzugten Präfix, das /usr/local
ist für macOS Intel und /opt/homebrew
für Apple Silicon (und /home/linuxbrew/.linuxbrew
für Linux).
In meinem Fall hatte ich zuvor ein Time Machine-Backup von meinem Intel-Mac auf meinem M1-Mac wiederhergestellt.
In meinem Fall hatte ich also eine Intel-Installation von Homebrew auf meinem M1-Mac.
Die Lösung
Glücklicherweise war die Lösung einfach. Ich habe einfach den Installationscode ausgeführt, der auf der Homebrew-Startseite aufgeführt ist (unter der Überschrift Homebrew installieren).
Daher habe ich Folgendes ausgeführt:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Das ergab Folgendes:
==> 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
Also ging ich weiter und fuhr mit der Installation fort.
Kurz gesagt, es installierte Homebrew in /opt/homebrew/
Verzeichnis, zugunsten meines M1 Mac.
Nachdem ich das ausgeführt hatte, befolgte ich den Rat der Fehlermeldung und führte Folgendes aus, um meine zuvor installierte Formelliste zu migrieren:
brew bundle dump
Fertig.
Eine Sache, die mir aufgefallen ist, ist, dass die Fehlermeldung die Verwendung einer der „alternativen Installationen“ vorschlägt, aber es scheint, dass das Standard-Installationsskript jetzt für M1-Macs geeignet ist, ohne dass eine alternative Installation durchgeführt werden muss.
Wenn Sie bei „Kann nicht in Homebrew auf ARM-Prozessor im Intel-Standardpräfix (/usr/local) installieren!“ hängen geblieben sind! ” Fehler, ich hoffe, das hilft!