You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在默认终端正常使用brew且不破坏Apple Game Porting Toolkit运行?

解决Apple Silicon Mac上双Homebrew版本冲突问题

背景

我按照一篇关于使用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命令会出现以下错误:

Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)!
请通过官方安装文档中的「替代安装」方式在/opt/homebrew创建新的安装,你可以使用brew bundle dump迁移已安装的公式列表。

只有再次执行arch -x86_64 zsh切换到Intel架构终端后,brew才能正常使用。

需求

希望找到方法让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

解决方法

由于你当前同时存在两个Homebrew版本:ARM架构版本安装在/opt/homebrew,Intel架构版本安装在/usr/local。默认终端为ARM架构,直接调用brew会触发Intel版本的架构不匹配报错,可通过设置别名区分两个版本:

  1. 打开shell配置文件(如~/.zshrc或~/.bashrc),添加以下内容:
# 区分ARM与Intel架构的Homebrew
alias brew_arm="/opt/homebrew/bin/brew"
alias brew_x86="/usr/local/bin/brew"

# 将默认brew指向ARM版本(适配默认终端架构)
alias brew="brew_arm"
  1. 保存文件后,执行以下命令使配置立即生效:
# 若使用zsh
source ~/.zshrc

# 若使用bash
source ~/.bashrc

这样设置后:

  • 默认终端输入brew会调用ARM版本,不再报错;
  • 需要使用Intel版本时,输入brew_x86即可;
  • 原Game Porting Toolkit命令不受任何影响,因为它明确指定了/usr/local/bin路径与arch -x86_64,会自动调用Intel架构的工具。

也可以选择不修改默认brew别名,直接通过完整路径调用对应版本,但别名方式更便于日常操作。

内容的提问来源于stack exchange,提问作者kando

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 14:35:42