Homebrew 是 Mac 的包管理器,类似于 Linux 中的 apt,Windows 中的 choco。

自从 M1 芯片发布,Homebrew 正在积极适配新架构,如今已经有了原生支持 ARM 架构的 ARM 版本 Homebrew。

需要注意的是,ARM 版本的 Homebrew 安装在 /opt/homebrew 路径下,而非 x86 版的 /usr/local/Homebrew

不过对于一些没有适配新架构的软件包,可能仍需要安装 x86 版本的 Homebrew。

安装 ARM 版 Homebrew

可直接执行官方安装脚本:

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

如果安装顺利,那恭喜你,你将会看到:

==> Installation successful!

==> Homebrew has enabled anonymous aggregate formulae and cask analytics.
Read the analytics documentation (and how to opt-out) here:
https://docs.brew.sh/Analytics
No analytics data has been sent yet (nor will any be during this install run). ==> Homebrew is run entirely by unpaid volunteers. Please consider donating:
https://github.com/Homebrew/brew#donations ==> Next steps:
- Run these two commands in your terminal to add Homebrew to your PATH:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/xiamu/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
- Run brew help to get started
- Further documentation:
https://docs.brew.sh

接下来只要执行日志中下一步的脚本即可:

$ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/xiamu/.zprofile
$ eval "$(/opt/homebrew/bin/brew shellenv)"

查看 Homebrew 版本:

$ brew -v
Homebrew 3.3.11
Homebrew/homebrew-core (git revision 7685d63742b; last commit 2022-01-22)

至此结束。

常见问题

  • curl: (35) LibreSSL SSL_connect: Connection reset by peer in connection to raw.githubusercontent.com:443
  • curl: (28) Failed to connect to raw.githubusercontent.com port 443: Operation timed out

类似上述报错,基本属于是网络问题,有多个可尝试解决方案。

方案一

遇到这类问题最常用的就是更改 hosts 文件了,步骤如下:

  1. 打开 https://ipaddress.com/website/raw.githubusercontent.com
  2. 将其中查询到的 ip 复制出来;
  3. 在终端执行 sudo vim /etc/hosts ,输入密码;
  4. 在hosts文件中添加一行 <复制的ip地址> raw.githubusercontent.com
  5. 重新执行安装脚本。

方案二

以上方案一不一定每次都管用,比如我这次(泪目

如果你有梯子,可以尝试开启全局代理执行安装脚本,或者直接下载安装脚本文件本地执行。

方案三

如果你没有梯子,可以使用 Homebrew 国内源,具体教程 看这里

方案四

如果你跟我一样是个强迫症,觉得国内源不干净可能更新不及时,也不想手动下载脚本,一定要使用官方推荐方式,但是全局代理又行不通,可以尝试让终端使用代理:

首先确定本机代理监听的协议及端口,如:socks5://127.0.0.1:1086

在终端测试下代理:

$ all_proxy="socks5://127.0.0.1:1086" curl https://ip.cn/api/index\?ip\=\&type\=0
{"rs":1,"code":0,"address":"美国 加利福尼亚 ","ip":"65.49.204.191","isDomain":0}%

可以看到请求是成功走代理的,对比不走代理:

$ curl https://ip.cn/api/index\?ip\=\&type\=0
{"rs":1,"code":0,"address":"中国 浙江省 杭州市 移动","ip":"xx.xx.xx.xx","isDomain":0}%

接下来就简单了,直接在安装脚本添加 all_proxy="socks5://127.0.0.1:1086" 即可:

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

安装 x86 版 Homebrew

安装 x86 版 Homebrew 及处理 两个版本的共存问题请参考参考链接。


参考:

在 M1 芯片 Mac 上使用 Homebrew https://sspai.com/post/63935

Mac m1 安装 Homebrew的更多相关文章

  1. MAC下安装Homebrew 和 @权限的问题

    MAC下安装Homebrew和 @权限的问题 1.Homebrew简介: Homebrew是一个包管理器,用于安装Apple没有预装但你需要的UNIX工具.(比如著名的wget). Homebrew会 ...

  2. MAC上安装Homebrew、Nginx、PHP、MySQL

    准备工作 新版的 Mac OS 内置了Apache 和 PHP,可以通过以下命令查看Apache和PHP的版本号: # httpd -v # php -v 安装Homebrew Mac下的Homebr ...

  3. MAC 中安装 Homebrew

    Homebrew可以很方便的进行软件包管理,用官网的一句话来形容就是 Homebrew 使 OS X 更完整.用 gem 来安装您的 gems.用 brew 来搞定它们的依赖包. 安装Homebrew ...

  4. Mac下安装Homebrew并升级subversion

    1. 切 Tencent-GuestWiFi2. $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/ins ...

  5. Mac下安装HomeBrew

    本文章为菲利克斯猫(Felix.mao)原创,转载务必在明显处注明:原文链接:http://blog.csdn.net/maojudong/article/details/7918291 1.  前言 ...

  6. Mac上安装Homebrew和wget

    实际上是使用Homebrew来安装wget 安装Homebrew Homebrew一般称为brew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常 ...

  7. MAC下安装Homebrew和GDB,并解决无法调试问题

    Homebrew官网 http://brew.sh/index_zh-cn.html Homebrew是神马 linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案, ...

  8. mac OS 安装 Homebrew及常用命令

    Homebrew  是由国外大神 Max Howell 开发的一款包管理工具,类似Debian的apt,他可以安装任何你想安装的东西. 安装方法 命令行输入 /usr/bin/ruby -e &quo ...

  9. mac上安装homebrew

    1:关于homebrew下载地址 homebrew下载地址网上版本很多:我用了几个都是显示 404 bad request 如图:均无法现在 有一个网址会给出最新的 安装地址: the URL is: ...

  10. M1 安装homebrew详解

    1.打开终端创建安装目录 sudo mkdir -p /opt/homebrew 2.修改目录权限 sudo chown -R $(whoami) /opt/homebrew 3.进入opt文件夹 c ...

随机推荐

  1. ArgoWorkflow教程(四)---Workflow & 日志归档

    上一篇我们分析了argo-workflow 中的 artifact,包括 artifact-repository 配置以及 Workflow 中如何使用 artifact.本篇主要分析流水线 GC 以 ...

  2. ASP.NET Core – CORS (Cross-Origin Resource Sharing)

    参考 Docs – Enable Cross-Origin Requests (CORS) in ASP.NET Core 介绍 CORS (Cross-Origin Resource Sharing ...

  3. JavaScript – Function 函数

    参考 阮一峰 – 函数的扩展 基本用法 function fn1(param1, param2 = 'default value') { return 'return value'; } fn1('1 ...

  4. 提升软件测试效率与灵活性:探索Mock测试的重要性

    Mock测试是测试过程中的一种方法,用于替代那些难以构造或获取的对象,通过创建虚拟对象来进行测试.所谓难以构造的对象如何理解呢? 举例来说,像HttpServletRequest这样的对象需要在具有s ...

  5. react native 环境搭建遇到问题

    关于pod install 慢的要死的问题 解决方法记录     开始时显示ruby有问题,卸载cocoapods重装的   然后启动不起来,到ios目录下执行 pod install   然后太慢尝 ...

  6. 逆向 Virustotal 搜索接口 X-VT-Anti-Abuse-Header

    逆向 Virustotal 搜索接口 X-VT-Anti-Abuse-Header 搜索示例 搜索 123,网页地址为:https://www.virustotal.com/gui/search/12 ...

  7. Java日期时间API系列22-----Jdk8中java.time包中的新的日期时间API类,Month月份和DayOfWeek星期的计算。

    Java8中为月份和星期新增的了,Month和DayOfWeek,来处理月份和星期的特殊问题,这2个类都是枚举类,对Month.DayOfWeek源码说明和简单应用,月份英文,月份英文简称,月份中文, ...

  8. 谈一谈 vuex 的运行机制

    Vuex提供数据(state)来驱动视图(vue components),通过dispath派发actions,在其中可以做一些异步的操作,然后通过commit来提交mutations,最后mutat ...

  9. 000 通过 Pytorch 实现 Transformer 框架完整代码(带注释)

    博客配套视频链接: https://space.bilibili.com/383551518?spm_id_from=333.1007.0.0 b 站直接看 配套 github 链接:https:// ...

  10. c++时间管理大师

    作者花了一个下午写出来的. c++写的时间管理大师. 支持一下. #include<bits/stdc++.h> #include<windows.h> using names ...