提示:宝子们,希望文章对你们有所帮助, 请一键三连支持博主下吧~
文章目录
- 前言
- [一、Rosetta 是什么?](#一、Rosetta 是什么?)
- 二、关于安装Rosetta
- 三、关于Rosetta的问题分享
- 总结
前言
博主的个人开发环境和配置说明:
MacOS Monterey 版本 12.6.8 Apple M1
Homebrew 版本4.1.12-8-gafbea15
随着Apple Silicon
的推出,使得苹果的电脑的性能得到飞跃的提升,M1芯片
就是其中比较典型的代表,但是芯片的的更迭,最需要解决的问题就是新平台上的应用能否向下兼容,原来基于Intel架构芯片
开发的应用能够在新平台上顺利运行?于是乎就有了Rosetta
;
一、Rosetta 是什么?
Rosetta 是苹果为Apple Silicon芯片推出的一个关键技术。它的主要作用简单的来说就是把Intel芯片处理的应用程序指令进行转换,让Apple Silicon芯片能识别和理解,从而使得这些应用程序能够在M1芯片上运行;这里可以把它看作是一个翻译器
,就是把Apple Silicon芯片不理解的Intel芯片语言翻译成能理解的样子;
二、关于安装Rosetta
当您首次尝试在M1芯片上运行基于Intel的应用程序时,系统通常会自动提示您安装Rosetta;
也可以通过 终端输入命令softwareupdate --install-rosetta来安装Rosetta
一旦Rosetta 2安装完成,它将在后台静默运行,为需要的应用程序提供必要的支持
三、关于Rosetta的问题分享
本来大概率情况下,Rosetta的安装并不会有什么特别的问题,博主自己也不记得之前是不是装过Rosetta,只是今天在终端使用homebrew安装软件的时候,出现了报错信息,大致内容是关于Rosetta的;
可以看出,他提示并建议我们,homebrew已经默认是ARM框架了,不需要在Rosetta下使用homebrew安装软件。或者如果一定要在该环境下安装,需要执行另外的语法语句,或者将homebrew安装到/usr/local下;
解决办法:
(1)通过报错的信息截图中,下方其实他也给了我们解决办法,如果一定要在这个环境下操作,需要的语句命令格式: arch -arm64 brew install +
(2)另外,我们在应用程序
中,找到实用工具->终端
,右键
打开简介
,会看到一个选项,将它关闭即可;记得重启终端才会生效;
总结
首先,Rosetta 是专门为了支持那些尚未更新为原生 Apple 芯片指令集的第三方命令行工具或脚本使用,所以在终端上我们可以不需要开启这个功能;按需开启即可;
其次,在使用homebrew的时候,我们需要知道它是默认安装在原生 ARM64 架构下的默认目录(/opt/homebrew)中的。Homebrew 在 Apple Silicon Mac 上默认是为 ARM64 架构安装的,所以不需要通过 Rosetta 来运行;