question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

node-gyp failure with npm 5.8.0

See original GitHub issue

node-pre-gyp fails in the node-gyp step with the following error (example using the vtquery module):

Error: Failed to execute 'node-gyp configure ...

Stack trace

V=1 ./node_modules/.bin/node-pre-gyp configure build --error_on_warnings=true --loglevel=error
NPM BASE /Users/mapsam/.nvm/versions/node/v6.13.0/lib/node_modules/npm/
NPM GYP BIN /Users/mapsam/.nvm/versions/node/v6.13.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
node-pre-gyp ERR! configure error 
node-pre-gyp ERR! stack Error: Failed to execute 'node-gyp configure --error_on_warnings=true --loglevel=error --module=/Users/mapsam/mapbox/vtquery/lib/binding/vtquery.node --module_name=vtquery --module_path=/Users/mapsam/mapbox/vtquery/lib/binding' (Error: spawn node-gyp ENOENT)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/Users/mapsam/mapbox/vtquery/node_modules/node-pre-gyp/lib/util/compile.js:80:29)
node-pre-gyp ERR! stack     at emitOne (events.js:96:13)
node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:188:7)
node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:217:12)
node-pre-gyp ERR! stack     at onErrorNT (internal/child_process.js:376:16)
node-pre-gyp ERR! stack     at _combinedTickCallback (internal/process/next_tick.js:80:11)
node-pre-gyp ERR! stack     at process._tickCallback (internal/process/next_tick.js:104:9)
node-pre-gyp ERR! stack     at Module.runMain (module.js:613:11)
node-pre-gyp ERR! stack     at run (bootstrap_node.js:387:7)
node-pre-gyp ERR! stack     at startup (bootstrap_node.js:153:9)
node-pre-gyp ERR! System Darwin 17.4.0
node-pre-gyp ERR! command "/Users/mapsam/.nvm/versions/node/v6.13.0/bin/node" "/Users/mapsam/mapbox/vtquery/node_modules/.bin/node-pre-gyp" "configure" "build" "--error_on_warnings=true" "--loglevel=error"
node-pre-gyp ERR! cwd /Users/mapsam/mapbox/vtquery
node-pre-gyp ERR! node -v v6.13.0
node-pre-gyp ERR! node-pre-gyp -v v0.6.39
node-pre-gyp ERR! not ok 
Failed to execute 'node-gyp configure --error_on_warnings=true --loglevel=error --module=/Users/mapsam/mapbox/vtquery/lib/binding/vtquery.node --module_name=vtquery --module_path=/Users/mapsam/mapbox/vtquery/lib/binding' (Error: spawn node-gyp ENOENT)
  • node version: v6.13.0
  • npm version: 5.8.0

It appears this is an issue with the most recent npm release, version 5.8.0, which was released on 03/08/2018 and removed the node-gyp module unexpectedly. https://github.com/npm/npm/issues/20163. The following path is created in node-pre-gyp with the assumption that node-gyp exists in npm.

/Users/mapsam/.nvm/versions/node/v6.13.0/lib/node_modules/npm/node_modules/node-gyp/bin/

We’ll continue to monitor over there to learn whether we need a fix here or if we can just update to a future version.

cc @springmeyer @millzpaugh

Issue Analytics

  • State:open
  • Created 5 years ago
  • Comments:7 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
crevieracommented, Jun 5, 2018

Hey! I just ran into this while using npm 5.8.0 and was able to fix this issue by doing:

npm install npm@latest -g

Thanks for making this issue @mapsam!

0reactions
nicolasnoblecommented, Jun 5, 2018

Right, node 8.11.2 is still pinned on npm 5.6.0 when installing it fresh, so it seems this issue is going to stay relevant for anything that installs nodejs with the npm associated with it; only node 10 is pinned on npm 6 right now.

This means that any CI that uses nvm for version switching will have this bug here. Right now for gRPC we are installing node-gyp globally in our CI to alleviate the problem, but it’s fairly sad to have to do this.

Read more comments on GitHub >

github_iconTop Results From Across the Web

npm install error with node-gyp\node_modules\@tootallnate
The error might be coming up as it is already in use by another program (without you realising about it, meaning it is...
Read more >
node-gyp - npm
Start using node-gyp in your project by running `npm i node-gyp`. There are 1316 other projects in the npm registry using node-gyp.
Read more >
Package: npm / 5.8.0+ds6-4+deb10u2 - Debian Sources
Package: npm / 5.8.0+ds6-4+deb10u2 ... node_modules/npm-lifecycle/node-gyp-bin/node-gyp | 2 1 + 1 - 0 ! ... lib/utils/error-message.js | 5 5 + 0 - 0...
Read more >
FS#58129 : [npm] node-gyp path specified in npm files is wrong
Since updating to npm 5.8.0 (with the new node-gyp 3.6.2), ... that rely on those versions of node-gyp to fail due to being...
Read more >
P16364 Getting strange error on running `npm install`
node build.js || nodejs build.js. gyp ERR! configure error. gyp ERR! stack Error: Can't find Python executable "python", you can set the ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found