33

我正在尝试运行node-gyp configure,但出现以下错误:

gyp: binding.gyp not found (cwd: /usr/local/bin)
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/local/lib/node_modules/node-gyp/lib/configure.js:337:16)
gyp ERR! stack     at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:789:12)
gyp ERR! System Darwin 13.0.0
gyp ERR! command "node" "/usr/local/bin/node-gyp" "configure"
gyp ERR! cwd /usr/local/bin
gyp ERR! node -v v0.10.20
gyp ERR! node-gyp -v v0.12.2
gyp ERR! not ok 

我认为我在错误的目录中,但我不确定。我应该在哪个目录中运行它?

4

6 回答 6

6

您正在尝试node-gyp rebuild在当前工作目录 (CWD)中运行,/usr/local/bin因此node-gyp无法在/usr/local/bin/binding.gyp.

将您的终端导航到包含 NodeJS 模块的目录,然后运行node-gyp rebuild​​.

cd ~/Projects/your-nodejs-native-module/
node-gyp rebuild

顺便说一句,我不确定确切来自哪个节点版本,但在现代版本中,您可以npm install在此目录中运行,npm 将为node-gyp rebuild您运行。

cd ~/Projects/your-nodejs-native-module/
npm install
于 2017-04-30T08:52:32.990 回答
1

如果有疑问先重新安装npm install -g node-gyp

最好的做法是运行node-gyp rebuild. 从项目的根目录运行它。您binding.gyp也应该在根目录中,指向依赖项(其他地方)。

一般来说,不需要node-gyp configure手动运行。

于 2015-09-19T14:29:34.433 回答
0

从外观上看(不是 100% 确定)/usr/local/bin在您的计算机中不存在。但是从堆栈跟踪很难说。

于 2016-08-02T13:46:01.267 回答
0

我在 macOS Big Sur 11.5.1 上处理 Angular 10 项目时遇到了这个问题

这个关于堆栈溢出的答案为我解决了 - https://stackoverflow.com/a/55590251/10622142

  1. 删除 package-lock.json
  2. 运行命令 => npm install
于 2021-08-11T06:02:38.433 回答
0

先全局安装node-gyp:

sudo npm -g install node-gyp

请看这个答案

于 2017-03-03T02:10:12.023 回答
0

我在使用较新版本的节点时遇到了这个问题。我最好的解决方法是使用节点版本管理器(nvm)之类的东西来恢复到旧版本的节点,然后npm install再次运行。

于 2016-08-11T17:47:42.777 回答