在 Apple Silicon M1 上无法进行 npm 安装的原因是因为缺少了必要的依赖库。可通过以下方式来解决:
安装 rosetta:在终端输入 softwareupdate --install-rosetta
然后按照提示进行安装。
安装 Xcode command line tools:在终端输入 xcode-select --install
然后按照提示进行安装。
重新安装 node.js 和 npm:
arch -x86_64 /bin/zsh -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
arch -x86_64 /usr/local/bin/brew install node@14
sudo ln -sf /usr/local/opt/node@14/bin/node /usr/local/bin/node
sudo ln -sf /usr/local/opt/node@14/bin/npm /usr/local/bin/npm
安装所需的依赖库:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer/
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.15.pkg -target /
注意:上述命令都需要在终端中运行,比较耗时,需要耐心等待。以上操作均需在管理员权限下进行。