MacOS之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 来运行;

相关推荐
SoraLuna10 小时前
「Mac畅玩鸿蒙与硬件47」UI互动应用篇24 - 虚拟音乐控制台
开发语言·macos·ui·华为·harmonyos
阿7_QuQ10 小时前
怎么在Windows上远程控制Mac电脑?
macos
小路恢弘16 小时前
使用Mac自带共享实现远程操作
macos
阿髙1 天前
macos 隐藏、加密磁盘、文件
macos
minos.cpp1 天前
Mac上Stable Diffusion的环境搭建(还算比较简单)
macos·ai作画·stable diffusion·aigc
追光天使2 天前
Mac/Linux 快速部署TiDB
linux·macos·tidb
wzkttt2 天前
Mac gfortran编译fortran出错
macos·gfortran
刘小哈哈哈2 天前
iOS 多个输入框弹出键盘处理
macos·ios·cocoa
草明2 天前
macOS 显示或不显示隐藏文件
macos
刘贤松2 天前
构建MacOS应用小白教程(打包 & 签名 & 公证 & 上架)
macos