Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)

Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)

我使用最新的Apple M1芯片处理器。我在安装应用程序时不断出错。

说.,

brew install openjdk@11
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

需要帮助了解具体步骤。

通过在 Utilities 文件夹的终端应用程序中启用 Open using Rosetta 选项进行了临时修复。

但是,如果知道这个问题的实际解决方案以使用原生方式,那就太好了。

值得一提的是,在安装 Homebrew 之前,您需要为新的 ARM 芯片(M1 芯片)安装 Rosetta2 模拟器。我刚刚通过终端安装了 Rosetta2:

/usr/sbin/softwareupdate --install-rosetta --agree-to-license

这将安装 rosetta2,无需额外点击按钮。

在上面安装 Rosetta2 之后,您可以使用 Homebrew cmd 并为 ARM M1 芯片安装 Homebrew: arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

安装 M1 ARM 的 Homebrew 后,使用此 Homebrew 命令安装软件包:arch -x86_64 brew install <package>

Homebrew 需要安装在 Apple 芯片上的两个位置:在 /usr/local 用于 rosetta-emulated (Intel) 代码,在 /opt/homebrew 用于 ARM64。这些有点硬编码,/opt/homebrew 必须用于 ARM 代码,就像今天一样,是 non-negotiable. However, it's easy enough to install and you can follow the general instructions on the official docs。你先打开一个Rosettashell

% arch -x86_64 zsh
% cd /usr/local && mkdir homebrew
% curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew

稍后,要在 intel 下安装工具,您可以使用 arch 命令 per-command 或打开 zsh 终端,如上所示。

arch -x86_64 /usr/local/homebrew/bin/brew install sometool

对于 ARM 架构,您不需要使用 arch 但您需要使用 homebrew 命令的完整路径。

/opt/homebrew/bin/brew install sometool

您可以将 brew 命令重命名为 brew86 和 brewARM 之类的名称,以帮助将它们分开。

这个问题与新的 macbook pro M1 芯片有关

错误:无法在英特尔默认前缀 (/usr/local) 的 ARM 处理器上安装 Homebrew!

对于解决,请按照以下步骤操作

Step1

$ brew bundle dump

Step2

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Step3 Edit file below

$ vi ~/.bashrc or vi ~/.zshrc

Edit below line in above file

export PATH=/opt/homebrew/bin:$PATH

只需使用:

arch -arm64 brew install package-name

将 'package-name' 替换为您要安装的软件包。

所以我买了一个新的 M1 并迁移到它。我把它拿回来并迁移回去。我收到了这个错误。发现我需要 运行 sudo rm -Rf /opt/homebrew 在 re-installing brew 之后让事情再次流动起来。 M1 上的 16G Ram 并没有用 Intel 使用 64G 取代我的工作流程。

首先运行这个命令:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

然后它会问你一个问题,点击return,然后等待安装完成。在 运行 这个命令之后:

brew bundle dump

运行 这在终端中解决了问题

eval "$(/opt/homebrew/bin/brew shellenv)"

如果您尝试在 IntelliJ 终端中 运行 您的命令,也可能会发生这种情况。只需在(常规)终端中尝试 运行。

Homebrew 现在可用于 https://docs.brew.sh/Installation 的新苹果 M1 芯片。该脚本安装在一个新位置,“/opt/homebrew”而不是“/usr/local”,这需要您在安装后执行几行脚本,替换您的用户名。您可以从安装中的评论中 copy/paste。只是不要跳过这些步骤。

==> Next steps:
- Add Homebrew to your PATH in /Users/[username]/.zprofile:
    echo 'eval "$(/opt/homebrew/bin/brew [username])"' >> /Users/[username]/.zprofile
    eval "$(/opt/homebrew/bin/brew [username])"

注意:这适用于在新机器上全新安装 Homebrew。如果您已经安装了旧版本的 Homebrew 并使其正常工作,我相信您需要先卸载它 - 或者 - 您可能会发现它更快 work-around http://blog.wafrat.com/homebrew-on-mac-with-m1/。未测试。