英文:
Homebrew : `Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)!`
问题
背景
我按照这个指南(关于使用Apple Game Porting Toolkit
)进行操作,其中提到:
> 即使您的 macOS 上已经安装了 Homebrew
,它也可能是为 Apple Silicon 安装的。您需要为 Intel 架构安装它:
arch -x86_64 zsh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
export PATH="/usr/local/bin:${PATH}"
问题
现在在新的终端中,运行 brew
命令会出现以下消息:
> 错误:无法在 ARM 处理器的 Intel 默认前缀(/usr/local)中安装 Homebrew!
请使用以下之一从“备用安装”中创建新的安装:
https://docs.brew.sh/Installation
您可以使用以下命令迁移先前安装的配方列表:
brew bundle dump
除非我再次运行:
arch -x86_64 zsh
问题
是否有办法让 brew
以其默认形式运行,但不会破坏以下命令:
PATH="/usr/local/bin:${PATH}" arch -x86_64 /usr/local/bin/gameportingtoolkit-no-hud ~/Games/battle-net ~/Games/battle-net/drive_c/Program\ Files\ \(x86\)/Battle.net/Battle.net\ Launcher.exe
英文:
Background
I followed this guide (on using Apple Game Porting Toolkit
), which stated:
> Even if you already have Homebrew
installed on your macOS, it is probably installed for Apple Silicon. You need to install it for Intel architecture:
arch -x86_64 zsh
/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
export PATH="/usr/local/bin:${PATH}"
Issue
Now in new terminals, brew
commands result in the message:
> 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
unless I again run:
arch -x86_64 zsh
Question
Is there a means to get brew
going in its default form, but without breaking:
PATH="/usr/local/bin:${PATH}" arch -x86_64 /usr/local/bin/gameportingtoolkit-no-hud ~/Games/battle-net ~/Games/battle-net/drive_c/Program\ Files\ \(x86\)/Battle.net/Battle.net\ Launcher.exe
?
答案1
得分: 1
从这里,我能够编辑(或创建,如果不存在)文件~/.zshrc
(通过TextEdit.app
或zsh的nano
命令):
# ~/.zshrc
export PATH="/usr/local/bin:$PATH" # arm64e homebrew path (m1 )
export PATH="/opt/homebrew/bin:$PATH" # x86_64 homebrew path (intel)
alias mbrew="arch -arm64e /opt/homebrew/bin/brew" # arm64e homebrew path (m1 )
alias ibrew="arch -x86_64 /usr/local/bin/brew" # x86_64 homebrew path (intel)
export
命令确保可以找到两个brew
命令。
(我认为M1
(arm64e
)版本会是默认的,因为它在顺序中排在第一位。)
alias
命令允许使用M1 brew
(使用mbrew
)和intel brew
(使用ibrew
)。
保存zsh配置文件(~/.zshrc
)后,运行:
source ~/.zshrc
以将更改应用到终端。
注意:使用alias
是我根据这里的规定编写的。
英文:
From here, I was able to edit (or create, if not existing) the file ~/.zshrc
(via TextEdit.app
or the zsh nano
command):
# ~/.zshrc
export PATH="/usr/local/bin:$PATH" # arm64e homebrew path (m1 )
export PATH="/opt/homebrew/bin:$PATH" # x86_64 homebrew path (intel)
alias mbrew="arch -arm64e /opt/homebrew/bin/brew" # arm64e homebrew path (m1 )
alias ibrew="arch -x86_64 /usr/local/bin/brew" # x86_64 homebrew path (intel)
The export
commands ensure both brew
commands can be found.
(I think the M1 (arm64e
) version would be the default because it's first in the order.)
The alias
commands allow the use of M1 brew
(with mbrew
) and intel brew
(with ibrew
).
After saving the zsh configuration file (~/.zshrc
), run:
source ~/.zshrc
to enact the changes into the terminal.
Note: Use of alias
was written by me, as specified by here.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论