Mac m系列芯片安装node14版本使用nvm + Rosetta 2

由于苹果 M 系列芯片(包括 M4)使用的是 ARM 架构,而 Node.js 14 是在英特尔 x86 架构时代发布的,因此在 M 系列 Mac 上安装 Node.js 14 可能会遇到兼容性问题

解决方法:使用 nvm + Rosetta 2

  1. 右键点击「终端」→「显示简介」→ 勾选「使用 Rosetta 打开」

  2. 重新打开新终端(Rosetta 模式),安装 nvm
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

  3. 安装 Node.js 14(自动触发 Rosetta 转译)
    nvm install 14

  4. 验证架构是否为 x86
    node -p "process.arch" # 应输出 x64(表示运行在 Rosetta 2 下)

如果在安装14版本前已经装了nvm和较高版本的node,如果转义为Rosetta 2,这时候再nvm -version会找不到nvm,这时候你可能想是不是要重新安装nvm,其实是不需要的,nvm本身是一个shell脚本管理器,它可以在不同架构的终端中使用同一个安装目录。

  1. 先检查当前终端环境(Rosetta),在Rosetta终端中执行:arch,应该输出 i386 或 x86_64(表示当前是Rosetta模式)。

  2. 确保在Rosetta终端中加载nvm,在Rosetta终端中,检查/.zshrc(或/.bashrc)中是否有nvm的加载代码。如果没有,手动添加,输入nano ~/.zshrc,在编辑器模式下添加

    bash 复制代码
    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
    [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

    之后保存并退出(nano中按Ctrl+O保存,按Ctrl+X退出)

  3. 然后执行source ~/.zshrc使配置生效

  4. 这个时候就可以使用nvm 安装node14了

相关推荐
pe7er3 天前
macOS 应用无法打开(权限问题)解决方案
macos·mac
harmful_sheep5 天前
mac生效的终端查看
macos
iOS门童6 天前
macOS 应用"已损坏"无法打开?一文搞懂 Gatekeeper 与解决方案
macos
NPE~6 天前
[工具分享]Maccy —— 优雅的 macOS 剪贴板历史管理工具
macos·教程·工具·实用工具
差不多程序员6 天前
Mac安装OpenClaw-cn保姆级教程
macos
dzl843946 天前
mac 安装python
开发语言·python·macos
Bruce_Liuxiaowei6 天前
在 macOS 上通过 Docker 本地安装 OpenClaw 完整教程
macos·docker·容器·openclaw
阿捏利6 天前
详解Mach-O(十五)Mach-O __DATA_CONST
macos·ios·c/c++·mach-o
ShikiSuen6 天前
macOS 的 CpLk 中英切换卡顿的元凶在 InputMethodKit 本身
macos
xiayutian_c6 天前
如虎添翼-MacOS
macos