Macos 错误:无法以英特尔默认前缀(/usr/local)在ARM处理器上的自制中安装
我使用最新的苹果M1芯片处理器。在安装应用程序的过程中,我不断地遇到错误 说Macos 错误:无法以英特尔默认前缀(/usr/local)在ARM处理器上的自制中安装,macos,arm,homebrew,macos-big-sur,apple-silicon,Macos,Arm,Homebrew,Macos Big Sur,Apple Silicon,我使用最新的苹果M1芯片处理器。在安装应用程序的过程中,我不断地遇到错误 说 需要有关具体步骤的帮助。通过从实用程序文件夹启用终端应用程序中的使用Rosetta打开选项,进行了临时修复 然而,如果能用本地方式知道这个问题的实际解决方案,那就太好了 在安装自制软件之前,您需要为新的ARM硅芯片(M1芯片)安装Rosetta2 emulator。我刚刚通过终端安装了Rosetta2,使用: /usr/sbin/softwareupdate--安装rosetta--同意许可证 这将安装rosetta2
需要有关具体步骤的帮助。通过从
实用程序
文件夹启用终端应用程序中的使用Rosetta
打开选项,进行了临时修复
然而,如果能用本地方式知道这个问题的实际解决方案,那就太好了
在安装自制软件之前,您需要为新的ARM硅芯片(M1芯片)安装Rosetta2 emulator。我刚刚通过终端安装了Rosetta2,使用:
/usr/sbin/softwareupdate--安装rosetta--同意许可证
这将安装rosetta2,无需额外的按钮点击
在安装上面的Rosetta2之后,您可以使用Homebrew cmd并安装Homebrew for ARM M1芯片:arch-x86_64/bin/bash-c“$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install.sh)“
一旦为M1 ARM安装了Homebrew,请使用此Homebrew命令安装软件包:
arch-x86_64 brew安装
Homebrew需要安装在Apple silicon上的两个位置:用于rosetta仿真(英特尔)代码的in/usr/local和用于ARM64的/opt/Homebrew。这些代码有点硬编码,/opt/homebrew one必须用于ARM代码,就像今天的情况一样,并且是。但是,它很容易安装,您可以按照上的一般说明进行操作。你先打开一个罗塞塔贝壳
% 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命令或如上所述打开zsh终端
arch -x86_64 /usr/local/homebrew/bin/brew install sometool
对于ARM体系结构,您不需要使用arch
,但需要使用自制命令的完整路径
/opt/homebrew/bin/brew install sometool
您可以将brew命令重命名为类似brew86和brewARM的名称,以帮助它们保持独立。此问题与新的macbook pro M1芯片有关 错误:无法以英特尔默认前缀(/usr/local)在ARM处理器上的自制中安装 要解决此问题,请执行以下步骤 步骤1 $brew捆绑包转储 步骤2 $/bin/bash-c“$(curl-fsSL) )“ 步骤3 编辑下面的文件 $vi~/.bashrc或vi~/.zshrc 在上面的文件中编辑下面的行 导出路径=/opt/homebrew/bin:$PATH
“您可以将brew命令重命名为类似于brew86和brewARM的名称,以帮助将它们分开”-具体如何操作?@indojin您可以使用ZSH别名。通过将
别名brew86=“arch-x86_64/usr/local/homebrew/bin/brew”
和别名brewARM=“/opt/homebrew/bin/brew”
添加到您的~/.zshrc
文件中,我也使用了别名。我想知道为什么这不是自制软件安装的标准…;)您如何知道是否要安装86或ARM?谢谢。由于某种原因,这个被认可的答案对我不起作用。但是在我运行了包括CURL在内的命令之后。我已经能够安装该软件包了。问题是最终您将需要使用两个自制版本。答案至少应该指出这一变化的后果……;)我的答案基于M1芯片和我的经验我已经在这个路径/opt/HomeBrew/中安装了HomeBrew/并且也安装了Nginx和PHP,它们工作正常。如果我执行上述命令,这是否会中断?在此命令之后:/usr/sbin/softwareupdate--安装rosetta--同意许可证
I get不支持在此系统上安装rosetta 2。
我也面临着同样的问题,是否有其他解决方法在该系统上安装rosetta 2支持。
arch -x86_64 /usr/local/homebrew/bin/brew install sometool
/opt/homebrew/bin/brew install sometool