MacOS之Rosetta技术的引入

ops/2024/9/25 15:27:47/

提示:宝子们,希望文章对你们有所帮助, 请一键三连支持博主下吧~

文章目录

  • 前言
  • 一、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 来运行;


http://www.ppmy.cn/ops/50567.html

相关文章

Eclipse 工作空间:深入解析与高效使用

Eclipse 工作空间:深入解析与高效使用 Eclipse 是一款广受欢迎的集成开发环境(IDE),它为各种编程语言提供了强大的开发工具。在 Eclipse 中,工作空间(Workspace)是一个核心概念,它代表了一个项目的集合,这些项目共享相同的配置和设置。本文将深入探讨 Eclipse 工作空…

项目二 OpenStack快速入门

任务一 熟悉OpenStack图形界面操作 1.1 Horizon项目 •各OpenStack服务的图形界面都是由Horizon提供的。 •Horizon提供基于Web的模块化用户界面。 •Horizon为云管理员提供一个整体的视图。 •Horizon为终端用户提供一个自主服务的门户。 •Horizon由云管理员进行管理…

Postman接口测试工具详解

前言 在现代软件开发中,API(应用程序接口)已成为各类应用程序互相通信和集成的核心。随着API的广泛使用,确保其稳定性、可靠性和性能的重要性日益增加。在这个背景下,API测试工具成为开发者和测试人员的重要武器。Pos…

C 语言连接MySQL 数据库

前提条件 本机安装MySQL 8 数据库 整体步骤 第一步:开启Windows 子系统安装Ubuntu 22.04.4,安装MySQL 数据库第三方库执行 如下命令: sudo aptitude install libmysqlclient-dev wz2012LAPTOP-8R0KHL88:/mnt/e/vsCode/cpro$ sudo aptit…

电商API接口详述:涵盖订单、库存等多功能接口介绍

电商商家自研管理系统,线下ERP系统或WMS系统想要接入电商平台订单打单发货,通过点三电商API可以一键对接多个电商平台,帮助商家、ERP/WMS服务商快速开发电商模块,实现电商业务管理功能,那么点三电商API接口有哪些可用接…

Docker 入门篇(十)-- XXL-Job 任务调度安装

一、简介 XXL-Job 是一个轻量级、分布式的任务调度平台,用于处理定时任务和手动触发任务。它具有高可用性、高可靠性和易于扩展等特点,适用于需要分布式任务调度的各种场景。 XXL-Job 相关博客: Springboot 开发之任务调度框架(二…

微信 小程序应用,页面,组件的生命周期

组件生命周期 组件的生命周期:指的是组件自身的一些钩子函数,这些函数在特定的时间节点时被自动触发 组件的生命周期函数需要在 lifetimes 字段内进行声明 最重要的生命周期是 created attached detached 包含一个组件生命周期流程的最主要时间点 定…

Mysql的事务

简单来说,事务就是一组原子性的sql语句。这个语句要么全部执行要么都不执行。 特性 原子性:确保事务的所有操作要么全部完成要么全部不完成,事务的所有操作都视为一个单一不可分割的单元 场景:UPDATE cs_user SET age 18 , ge…