📜  在 sharp@0.16.2 安装脚本中失败 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:23:19.212000             🧑  作者: Mango

在 sharp@0.16.2 安装脚本中失败 - Shell-Bash

如果您在尝试安装 sharp 版本 0.16.2 时,遇到了安装脚本失败的问题,本文可能会对您有所帮助。

问题描述

执行以下命令时,sharp@0.16.2 的安装脚本会失败:

npm install sharp@0.16.2

在执行该命令时,您可能会收到以下错误消息:

gyp ERR! build error
gyp ERR! stack Error: not found: make
gyp ERR! stack     at getNotFoundError (/usr/local/lib/node_modules/npm/node_modules/which/which.js:13:12)
gyp ERR! stack     at F (/usr/local/lib/node_modules/npm/node_modules/which/which.js:68:19)
gyp ERR! stack     at E (/usr/local/lib/node_modules/npm/node_modules/which/which.js:80:29)
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/which/which.js:89:16
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/isexe/index.js:42:5
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:153:21)
gyp ERR! System Linux 4.4.0-79-generic
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /app/node_modules/sharp
gyp ERR! node -v v8.4.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
原因分析

这个错误消息表明缺少系统依赖,导致无法安装 sharp。

sharp 是一个 Node.js 库,可以进行图像处理。它需要一些底层依赖,如 GCC 和 Make,以及一些图像处理库,如 libvips。

解决方案
1. 安装所需依赖

在 Ubuntu 系统上,可以使用以下命令安装所需依赖:

sudo apt-get install -y build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev

在 Fedora 系统上,可以使用以下命令安装所需依赖:

sudo dnf install -y gcc-c++ cairo-devel libjpeg-turbo-devel giflib-devel librsvg2-devel

在 macOS 系统上,可以使用以下命令安装所需依赖:

xcode-select --install
2. 更新 Node.js 版本

如果您使用的是旧版本的 Node.js,那么建议更新至较新版本,以获得更好的兼容性和性能。

3. 清除缓存并重新安装

清除 npm 缓存后,再重新安装 sharp,以确保安装是始终干净的。

npm cache clean --force
npm install sharp@0.16.2
结论

在使用 sharp 库时,如果您遇到这样的问题,首先需要确保您的系统上已安装所需的依赖,并更新 Node.js 版本。如果问题仍然存在,请清除 npm 缓存并重新安装 sharp。

以上是本文的全部内容,希望能够对您有所帮助。