You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M1Pro无法启动旧项目,npm i遇node-sass安装报错

解决Mac M1Pro上node-sass@4.14.1安装失败及node-gyp编译问题

核心问题拆解

你的问题源于两个不兼容点:node-sass旧版本未适配Apple Silicon架构,以及Python版本与旧版node-gyp脚本语法冲突。


解决步骤

1. 处理node-sass@4.14.1无darwin-arm64预编译包问题

node-sass@4.14.1发布时还没有适配Apple Silicon(arm64)的预编译包,导致下载报错404。两种解决方式:

  • 方式一:用Rosetta 2模拟x86环境安装
    终端执行:
    arch -x86_64 npm install
    
    此命令让Node.js以x86架构运行,自动下载适配的darwin-x64预编译包,跳过本地编译步骤。
  • 方式二:手动指定预编译包URL
    直接指定x86架构的包地址:
    npm install node-sass@4.14.1 --sass-binary-url=https://github.com/sass/node-sass/releases/download/v4.14.1/darwin-x64-83_binding.node
    

2. 修复Python3.10与node-gyp的语法冲突

node-sass@4.14.1依赖的node-gyp版本不支持Python3.10(Python3.10要求print必须带括号,旧版node-gyp脚本用了Python2的无括号语法)。解决方式:

  • 用pyenv切换到兼容的Python版本(如3.9或2.7):
    # 若未安装Python3.9,先执行安装
    pyenv install 3.9.16
    # 切换当前项目使用Python3.9
    pyenv local 3.9.16
    
    切换完成后再执行npm install即可正常编译。

综合执行方案

如果单独操作无效,可合并执行:

arch -x86_64 pyenv local 3.9.16
arch -x86_64 npm install

内容的提问来源于stack exchange,提问作者Evhenii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 02:04:52