『开发技巧』M1芯片MacOS安装brew教程

728 阅读5分钟

Homebrew

 

0x01:引子

Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。

笔者在使用M1芯片的MacBookAir安装时,遇到一些问题。通过对问题的思考分析与修改尝试进行了解决,记录下来供读者们参考。

0x02:历程

 

命令行执行安装指令:

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

输出:

Last login: Sun Apr 25 11:21:30 on ttys000
(base) song@SongsongYandeMacBook-Air ~ % /bin/zsh -c "$(curl -fsSL https://gitee.com/huwei1024/HomebrewCN/raw/master/Homebrew.sh)"


              开始执行Brew自动安装程序
             [cunkai.wang@foxmail.com]
           [2021-04-25 19:18:21][11.2]
       https://zhuanlan.zhihu.com/p/111014448


请选择一个下载镜像,例如中科大,输入1回车。
源有时候不稳定,如果git克隆报错重新运行脚本选择源。cask非必须,有部分人需要。
1、中科大下载源 2、清华大学下载源 3、北京外国语大学下载源 4、腾讯下载源(不显示下载进度) 5、阿里巴巴下载源(缺少cask源)
请输入序号: 1

  你选择了中国科学技术大学下载源

!!!此脚本将要删除之前的brew(包括它下载的软件),请自行备份。
->是否现在开始执行脚本(N/Y)Y

--> 脚本开始执行
==> 通过命令删除之前的brew、创建一个新的Homebrew文件夹
(设置开机密码:在左上角苹果图标->系统偏好设置->"用户与群组"->更改密码)
(如果提示This incident will be reported. 在"用户与群组"中查看是否管理员)
请输入开机密码,输入过程不显示,输入完后回车
Password:
开始执行
-> 创建文件夹 /opt/homebrew/Homebrew
此步骤成功
   ---备份要删除的文件夹到系统桌面....
   ---/Users/song/Library/Caches/Homebrew/ 备份完成
   ---备份要删除的文件夹到系统桌面....
   ---/opt/homebrew/Caskroom 备份完成
-> 创建文件夹 /opt/homebrew/Caskroom
此步骤成功
   ---备份要删除的文件夹到系统桌面....
   ---/opt/homebrew/Cellar 备份完成
-> 创建文件夹 /opt/homebrew/Cellar
此步骤成功
   ---备份要删除的文件夹到系统桌面....
   ---/opt/homebrew/var/homebrew 备份完成
-> 创建文件夹 /opt/homebrew/var/homebrew
此步骤成功
-> 创建文件夹 /opt/homebrew/var/homebrew/linked
此步骤成功
git version 2.24.3 (Apple Git-128)

下载速度觉得慢可以ctrl+c或control+c重新运行脚本选择下载源
==> 克隆Homebrew基本文件(32M+)

未发现Git代理(属于正常状态)
objc[11927]: Class AMSupportURLConnectionDelegate is implemented in both ?? (0x1ef84c188) and ?? (0x11868c2b8). One of the two will be used. Which one is undefined.
objc[11927]: Class AMSupportURLSession is implemented in both ?? (0x1ef84c1d8) and ?? (0x11868c308). One of the two will be used. Which one is undefined.
Cloning into '/opt/homebrew/Homebrew'...
remote: Enumerating objects: 188669, done.
remote: Total 188669 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (188669/188669), 48.17 MiB | 3.27 MiB/s, done.
Resolving deltas: 100% (140813/140813), done.
此步骤成功
==> 创建brew的替身
此步骤成功
==> 克隆Homebrew Core(224M+) 
此处如果显示Password表示需要再次输入开机密码,输入完后回车
Cloning into '/opt/homebrew/Homebrew/Library/Taps/homebrew/homebrew-core'...
remote: Enumerating objects: 947142, done.
remote: Total 947142 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (947142/947142), 373.28 MiB | 4.30 MiB/s, done.
Resolving deltas: 100% (650644/650644), done.
此步骤成功
==> 克隆Homebrew Cask(248M+) 类似AppStore 
此处如果显示Password表示需要再次输入开机密码,输入完后回车
Cloning into '/opt/homebrew/Homebrew/Library/Taps/homebrew/homebrew-cask'...
remote: Enumerating objects: 618453, done.
remote: Total 618453 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (618453/618453), 257.36 MiB | 3.45 MiB/s, done.
Resolving deltas: 100% (441524/441524), done.
此步骤成功
==> 配置国内镜像源HOMEBREW BOTTLE
此步骤成功

==> 安装完成,brew版本

11.2
brew -v

zsh:363: command not found: brew

    失败 查看下面文章第二部分的常见错误
    https://zhuanlan.zhihu.com/p/111014448
    如果没有解决,把运行脚本过程截图发到 cunkai.wang@foxmail.com --end

注意上述这里的信息:/opt/homebrew/Homebrew,你在执行安装记录下这个位置,后面会用到。

开始执行
-> 创建文件夹 /opt/homebrew/Homebrew

 这里安装完成后运行出错的原因是,路径配置有问题,默认的brew配置路径是 /usr/local/ ,而实际笔者安装位置是上面: /opt/homebrew/Homebrew,所以报错:

brew -v

zsh:363: command not found: brew

我们需要修改~/.zshrc 这个文件的路径配置信息即可。

打开~/.zshrc 文件,命令行执行:

sudo vim ~/.zshrc

原内容:

# HomeBrew
export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
export PATH="/usr/local/bin:$PATH"
export PATH="/usr/local/sbin:$PATH"

修改为:

# HomeBrew
export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
export PATH="/usr/homebrew/Homebrew/bin:$PATH"
export PATH="/usr/homebrew/Homebrew/sbin:$PATH"

保存退出后,激活此文件,命令行执行:

source ~/.zshrc

现在测试brew是否正常,命令行执行:

brew -v

输出为:

(base) song@SongsongYandeMacBook-Air bin % brew -v
Homebrew 3.1.3-91-gfb7d19c-dirty
Homebrew/homebrew-core (git revision 9bc3198bef; last commit 2021-04-25)

这个信息就代表可以正常使用了。

 

0x03:后记

 

这个博客对你有用的话欢迎收藏转发,也麻烦可爱又爱学的你能赏个赞,菜小宋更博不易,在这里谢过啦。

如果你想学习更多开发技巧与AI算法,欢迎搜索关注笔者公众号“简明AI”,和爱学习讨论的小伙伴一起交流学习。