Intel 迁移 Apple Silicon(M1、M2、M3 )

前言

最近 Intel 芯片通过迁移助理迁移到 Apple M3 芯片后,发现了一系列的兼容问题,本篇文章主要记录了遇到了哪些问题以及对应的解决方案,希望能帮助到JYM。

1.Fix for 'Bad CPU type in executable' Error

现象

终端报错 Error 或 应用闪退: Fix for 'Bad CPU type in executable'

原因

您尝试运行的应用程序不是为 Apple 制造的芯片(Apple Silicon)构建的。

报错场景

  • 从 Intel 迁移到 Apple Silicon
  • 尝试安装非 64 位的程序或其某些库仍为 32 位(从 macOS Catalina 开始,Mac 不再支持 32 位程序)

下面的问题的报错场景类似不再赘述

解决方案

安装 Rosetta 2

Rosetta 2,是苹果公司为了帮助用户在苹果从 Intel 处理器向自家设计的 Apple Silicon(基于 ARM 架构的 M1/M2/M3 芯片)过渡期间运行旧的 x86 应用程序,允许用户在搭载 Apple Silicon 的 Mac 上无缝运行为 Intel 处理器设计的应用程序

安装方法1:通过GUI

第一次尝试运行不兼容的程序(例如 VSCode IDE)时系统会自动提示您安装 Rosetta 2。

现在,只需单击"安装"即可开始。

安装方法2:终端

终端不会自动检测到 Rosetta 丢失(例如 输入npm/node命令时)。相反,它会给您错误Bad CPU type in executable

我们只需要在终端运行如下命令:

shell 复制代码
/usr/sbin/softwareupdate -install-rosetta -agree-to-license

然后等待安装即可

2.xcrun: error: invalid active developer path

现象

使用 git 报错,信息如下: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

原因

macOS 系统更新之后,特别是当你尝试使用命令行工具(如 git、make 等)时。这个错误表明 Xcode Command Line Tools 的路径不再有效,这可能是因为系统更新后,这些工具没有被正确安装或者需要重新安装

Xcode Command Line Tools 包含了 macOS 用户在终端中使用开发者命令所需的工具和编译器,如 gcc、git、svn、make 等

解决方案

安装 Xcode Command Line Tools,终端输入如下命令即可:

lua 复制代码
xcode-select --install

回车后会出现以下交互页面:

点击安装即可

3.git push报错(连接服务器错误)

现象

终端输入 git push upstream production 后报错如下: Unable to negotiate with xxx.92.126.xx port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss fatal: Could not read from remote repository

在尝试通过SSH协议(默认端口22)连接到远程Git仓库时,本地SSH客户端无法识别远程服务器提供的主机密钥类型。

原因

这通常是因为SSH客户端的配置不接受远程服务器提供的密钥类型,特别是如果你的SSH客户端较新,而服务器使用的是较旧或不再被认为安全的密钥类型(如ssh-dss)

解决方案
arduino 复制代码
git config core.sshCommand "ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa"

这条命令会将SSH命令配置为全局Git配置的一部分,它会在每次Git需要使用SSH时应用这些选项

如果你只想对特定的仓库应用这个设置,可以去掉 --global 标志,并在仓库的根目录下运行上述命令。

4.微信小程序打不开

发现部分小程序在电脑端打开白屏,社区官方给出的回复如下:

5.无法扩展2个及以上显示器

这个官方目前只有 M3 Pro 及以上版本才支持扩展多个显示器,M3 只能外接一台显示器,目前还没有发现解决方案,如果JYM有方案欢迎留言~

如果有外接多个显示器的强需求的JY注意这一点!!!

相关推荐
layman05281 天前
webpack5 css-loader:从基础到原理
前端·css·webpack
半桔1 天前
【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典
前端·css·html
AI老李1 天前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·postcss
_OP_CHEN1 天前
【前端开发之CSS】(一)初识 CSS:网页化妆术的终极指南,新手也能轻松拿捏页面美化!
前端·css·html·网页开发·样式表·界面美化
啊哈一半醒1 天前
CSS 主流布局
前端·css·css布局·标准流 浮动 定位·flex grid 响应式布局
PHP武器库1 天前
ULUI:不止于按钮和菜单,一个专注于“业务组件”的纯 CSS 框架
前端·css
电商API_180079052471 天前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫
晓晓莺歌1 天前
vue3某一个路由切换,导致所有路由页面均变成空白页
前端·vue.js
Up九五小庞1 天前
开源埋点分析平台 ClkLog 本地部署 + Web JS 埋点测试实战--九五小庞
前端·javascript·开源
qq_177767371 天前
React Native鸿蒙跨平台数据使用监控应用技术,通过setInterval每5秒更新一次数据使用情况和套餐使用情况,模拟了真实应用中的数据监控场景
开发语言·前端·javascript·react native·react.js·ecmascript·harmonyos