Mac的M芯片无法兼容Node16以下版本
问题一:nvm安装node报错
提示
nvm在Mac M1上安装Node 16 以下版本会报错,并且无法安装。 首先是arm架构芯片不再兼容node14,官方没有提供。
解决办法:
- 将终端设置成Rosetta 模式,重启使用NVM安装node即可。
- arch -x86_64 zsh 再安装也行
问题二:Node-Sass 在安装依赖的时候报错
旧版本的node-sass会依赖node-gyp,而node-gyp在mac m1上安装会报错,因为node-gyp只支持x86架构的芯片,而m1是arm架构的芯片,所以无法兼容。
提示
老版本的node-sass依赖的python版本是2.7,而mac m1上默认的python版本是3.9,所以需要安装python2.7,并且设置环境变量。
解决办法(conda方案):
安装conda或者pyenv来管理python版本,旧版本的python和node一样,没有支持arm架构的版本. 使用x86架构的python版本,并激活。
CONDA_SUBDIR=osx-64 conda create -n py27 python=2.7
conda activate py27
# 安装依赖 我最终使用yarn 安装即可
yarn install or npm install