mac M1 安装 brew

安装Rosetta 2



苹果的硬件从power pc版的CPU过渡到 英特尔CPU时引入了Rosetta。现在,基于ARM的Mac电脑又迎来了另一个重要的硬件转变:Rosetta 2的推出。Rosetta 2并不像应用程序那样运行,而是在后台工作。它不会和macOS Big Sur一起运行,但会在第一次启动基于英特尔的应用程序时自动安装。



手动安装Rosetta 2要输入如下指令:



softwareupdate –install-rosetta



自动同意软件许可协议,使用:



% sudo nano /etc/pathAdd the two paths/opt/homebrew/ bin/opt/homebrew/opt



首先创建一个单独的文件夹来安装Homebrew:










% cd /opt% mkdir homebrew && curl -Lhttps://github.com/Homebrew/brew/tarball/master tar xz –strip 1 -C homebrew% sudo chown -R $(whoami) /opt/homebrew


将这些路径添加到环境中:



% sudo nano /etc/pathAdd the two paths/opt/homebrew/bin/opt/homebrew/opt



重新启动终端并 brew update.;带前缀运行arch -x86_64 atARM-based terminal;使用下面的命令安装基于intel的Homebrew:



$ arch -x86_64 /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)”



加上前缀arch -x86_64:



arch -x86-64 brew update



· 从Rosetta 2运行终端



从Rosetta 2运行终端/iTerm,右键单击应用程序中的应用程序,然后选择Get Info,并勾选使用Rosetta打开。然后当启动终端/iTerm时,它会自动在Rosetta 2中运行。基于英特尔的mac的命令能够使用了。



/bin/bash -c “$(curl -fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”




  1. 使用 Rosetta 2 安装 Homebrew
    那么怎么使用 Rosetta 2 来安装 brew 呢?



我们可以在命令前加上 arch -x86_64,也就是:



arch -x86_64 /bin/bash -c “$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)”




  1. 设置终端默认使用 Rosetta 2 模式启动
    那么是不是每次我们都需要在命令前加上 arch -x86_64 呢?其实也不需要,我们只需要设置 ITerm2 或者终端直接通过 Rosetta 2 模式打开即可。



在访达 -> 应用程序,找到 iTerm2,右键,选择“显示简介”,然后选择“使用 Rosetta 打开”即可,如图所示。

https://www.sohu.com/a/442730197_120873246



http://ipod.tgbus.com/rosetta/default.htm



Homebrew is not (yet) supported on ARM processors!



http://oldtang.com/5243.html



https://blog.csdn.net/alex_yangchuansheng/article/details/111570190



cd /opt # 切换到 /opt 目录
mkdir homebrew # 创建 homebrew 目录
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz –strip 1 -C homebrew



可以安装成功但是部分软件没法用
https://sspai.com/post/63935



https://blog.csdn.net/tanshizhen119/article/details/111244245



由于 M1 芯片底层架构和过去不同,由此带来的应用生态兼容性问题是首先需要解决的,为此苹果也开启了为期两年的 Mac 过渡计划。具体来说,苹果借助的是 macOS 11 Big Sur 系统以及其内置的 Universal 2、Rosetta 2 和 Virtualizaion 三种技术来解决问题



不过话虽如此,可能还是会有小伙伴会比较犹豫,这些措施真的可以解决 M1 芯片 Mac 的软件兼容性问题吗?特别是原来在 x86 架构上的应用,开发者还没有及时做适配,能在 Mac 上很好地运行吗?



对于这个问题,其实苹果已经给出了专门的解决方案,就是 Rosetta 2。可是谈到 Rosetta 2



以搭载 M1 芯片的 13 英寸 MacBook Pro 为例,平时在使用的时候,基本上不会和 Rosetta 2 产生交互。



Rosetta 2 是内置在 macOS 11 Big Sur 系统里的,在幕后工作,只有当你第一次下载一款 x86 应用,第一次打开时,才会提示你安装 Rosetta 2。



换句话说,Rosetta 2 的存在完全不会对你过去一直以来使用 Mac 的习惯造成影响,它几乎是无感的,悄悄做着翻译工作。



想要知道你使用的 App 到底是原生在 Mac 上运行的,还是经过 Rosetta 2“翻译”之后的,只要在 “应用程序”文件夹中找到这个应用的图标,右键打开菜单栏里的 “显示简介”,如果应用种类后面有一个 “Intel”,说明这个应用就是 x86 版本经过 Rosetta 2 翻译的。



基于这样的机制,Rosetta 2 能够帮助 x86 架构的应用在 M1 芯片的 Mac 上保持流畅快速的响应,从而获得很好的使用体验。



当然,Rosetta 2 做翻译的方案毕竟只是权宜之计,不会一直存在,只是在开发者们将自己的应用全面转到 M1 芯片原生状态之前扮演过渡的作用。



苹果预计这个过渡期大约是两年。其实目前已经有不少开发者针对 M1 芯片平台适配了 App,少了 “翻译”这个中间层,体验自然会更上一层楼。



https://new.qq.com/omn/20201228/20201228A0HOUY00.html


Category web