likes
comments
collection
share

Mac M1/M2下解决brew 安装Rust问题

作者站长头像
站长
· 阅读数 62

背景介绍

在Mac系统上,我们可能会遇到Rust安装问题,特别是在搭载M1/M2芯片的设备上。这些芯片基于ARM架构,与传统的Intel x86架构不同。Rust的依赖之一,llvm,可能在ARM架构下出现兼容性问题。本文将介绍如何在Mac上解决这一问题。

问题原因

  • 架构差异:M1/M2芯片基于ARM架构,而传统的Mac使用的是Intel x86架构。由于llvm在ARM架构下的兼容性问题,使用Homebrew安装Rust时可能会遇到困难。
  • 兼容性问题macOS 11 Big Sur 在 Apple Silicon 上的兼容性问题 详细描述了在Apple Silicon上使用Homebrew可能遇到的问题。

解决方法

1. 卸载brew

如果您已经安装了国内的Homebrew版本,首先需要将其卸载。可以通过执行以下命令来完成:

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"

注意:

请先查看一下/usr/local目录下是否也有brew 安装的东西

如果有请再执行一下卸载命令

如果提示权限不够需要手动执行删除命令

sudo rm -rf /usr/local

2. 升级Rosetta

为了在ARM架构的Mac上安装x86架构的软件,我们需要使用Rosetta。可以通过以下命令升级Rosetta:

softwareupdate --install-rosetta

3. 使用国内源安装Homebrew

接下来,我们需要使用国内源重新安装Homebrew。执行以下命令:

# 使用x86架构
arch -x86_64 bash
# 安装brew
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

4. 配置别名

安装完成后,我们需要配置一个别名,以便安装x86架构的软件包。在~/.zprofile文件的末尾添加以下内容:

alias xbrew='arch -x86_64 /usr/local/Homebrew/bin/brew'

5. 安装x86版本的llvm

最后,使用配置好的别名安装x86架构的llvm:

xbrew install llvm

总结

通过以上步骤,我们可以在搭载M1/M2芯片的Mac设备上解决Rust安装问题。关键在于使用Rosetta和国内源的Homebrew来安装x86架构的依赖,从而确保软件兼容性。 希望这篇文章能帮助到遇到类似问题的用户。如果您有任何疑问或需要进一步的帮助,请随时提问。

参考

在 M1 芯片 Mac 上使用 Homebrew - 少数派 (sspai.com)

M1 Mac 安装Homebrew - DannielZhang - 博客园 (cnblogs.com)

在Apple Silicon Mac上安装Rosetta 2详细教程 - 知乎 (zhihu.com)

转载自:https://juejin.cn/post/7351700046486405129
评论
请登录