7

I cant install sharp library using sudo npm install sharp.

The terminal output:

sharp@0.23.1 install /Users/kozakiewicz/node_modules/sharp (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)

info sharp Using cached /Users/kozakiewicz/.npm/_libvips/libvips-8.8.1-darwin-x64.tar.gz
ERR! sharp EACCES: permission denied, mkdir '/Users/kozakiewicz/node_modules/sharp/vendor'
info sharp Attempting to build from source via node-gyp but this may fail due to the above error
info sharp Please see https://sharp.pixelplumbing.com/page/install for required dependencies
gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/Users/kozakiewicz/node_modules/sharp/build'
gyp ERR! System Darwin 18.7.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/kozakiewicz/node_modules/sharp
gyp ERR! node -v v10.16.3
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 
npm WARN enoent ENOENT: no such file or directory, open '/Users/kozakiewicz/package.json'
npm WARN gatsby-plugin-sass@2.1.14 requires a peer of gatsby@^2.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN gatsby-plugin-sass@2.1.14 requires a peer of node-sass@^4.9.0 but none is installed. You must install peer dependencies yourself.
npm WARN sass-loader@7.3.1 requires a peer of webpack@^3.0.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN gatsby-plugin-sharp@2.2.27 requires a peer of gatsby@^2.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN gatsby-source-contentful@2.1.36 requires a peer of gatsby@^2.0.33 but none is installed. You must install peer dependencies yourself.
npm WARN gatsby-source-filesystem@2.1.22 requires a peer of gatsby@^2.2.0 but none is installed. You must install peer dependencies yourself.
npm WARN gatsby-transformer-sqip@2.1.25 requires a peer of gatsby@^2.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN gatsby-transformer-sqip@2.1.25 requires a peer of gatsby-transformer-sharp@^2.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN sass-loader@7.1.0 requires a peer of webpack@^3.0.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN kozakiewicz No description
npm WARN kozakiewicz No repository field.
npm WARN kozakiewicz No README data
npm WARN kozakiewicz No license field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! sharp@0.23.1 install: `(node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the sharp@0.23.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/kozakiewicz/.npm/_logs/2019-10-14T21_07_02_376Z-debug.log
Snel23
  • 1,381
  • 1
  • 9
  • 19
Kozakiewicz1221
  • 71
  • 1
  • 1
  • 3
  • 3
    You’ve messed up your installed npm packages’ permissions by using sudo. Don’t use sudo with npm. Anyway, if you install sharp local to your project, you can bypass the broken installation in Users/kozakiewicz/node_modules for now. – Ry- Oct 14 '19 at 21:13

6 Answers6

3

Delete all dependencies with rm -rf node_modules and also delete /home/USER/.npm/_libvips/libvips-8.8.1-linux-x64.tar.gz and try again That should fix.

2

This has a few probable causes, the one that got me was node version.

I had node --version set to 14.0.0 where it should be the same as whats set in the environment.

  1. Install nvm (node version manager)
  2. find what version of node you need to use
  3. nvm use 10 or replace 10 with your node version value.
mewc
  • 1,253
  • 1
  • 15
  • 24
0

Copied a libvips-8.8.1-linux-x64.tar.gz from a working machine and pasted it on /home/USER/.npm/_libvips/ solved the issue

ABC
  • 1
0

Maybe you are running with root user.

Try npm config -g set unsafe-perm true, even though it is kind of dangerous

edvard chen
  • 2,320
  • 1
  • 12
  • 10
0

if you using Ubuntu try this

sudo apt-get update
sudo apt-get -y install libvips-dev
npm rebuild sharp
sudo npm install sharp
Vino Crazy
  • 71
  • 1
  • 4
-4

Run your command with sudo e.g sudo [your command]

  • 1
    No. That was never a good practice to begin with, and thankfully the Node ecosystem doesn't require you do to it any more. – Raydot May 21 '22 at 22:42