执行npm install遇node-pre-gyp错误,canvas依赖安装失败求助
解决canvas@2.11.2在Node.js 22.3.0(arm64)下npm install失败的问题
方案1:降级Node.js到兼容版本
canvas@2.11.2未提供Node.js 22 arm64架构的预编译包,降级到Node.js 18/20 LTS版本(这类版本有对应预编译包):
- 使用nvm切换版本:
nvm install 20 nvm use 20 - 重新执行
npm install
方案2:升级canvas到支持Node.js 22的版本
旧版canvas未适配Node.js 22,升级到兼容版本即可获取对应预编译包:
- 修改
package.json中canvas的版本为^2.12.0或更高(确认支持Node.js 22) - 执行
npm install,或直接安装最新版:npm install canvas@latest
方案3:升级系统cairo库以支持源码编译
若不想更换Node/canvas版本,需将系统cairo升级到>=1.18.0:
- macOS(Homebrew):
brew upgrade cairo - Ubuntu/Debian:
sudo apt-get update && sudo apt-get install libcairo2-dev libjpeg-dev libpango1.0-dev libgif-dev build-essential g++ - CentOS/RHEL:
sudo yum install cairo-devel libjpeg-turbo-devel pango-devel giflib-devel gcc-c++ - 升级完成后重新执行
npm install
内容的提问来源于stack exchange,提问作者Max
相关产品推荐
相关产品推荐

