尝试配置或重建 node-gyp 时,出现错误:mac osx mavericks
Posted
技术标签:
【中文标题】尝试配置或重建 node-gyp 时,出现错误:mac osx mavericks【英文标题】:when trying to configure or rebuild node-gyp, getting errors: mac osx mavericks 【发布时间】:2014-01-21 14:40:51 【问题描述】:我正在尝试运行 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
我认为我在错误的目录中,但我不确定。我应该在哪个目录中运行它?
【问题讨论】:
node-gyp configure build
用于构建包含 c/c++ 文件的包。您可以将cd
打包到有文件binding.gyp
的文件夹,然后输入node-gyp configure build
或node-gyp rebuild
确保你已经通过 xcode 安装了开发者工具。
我也有同样的问题,我忘了把文件名从binding.gyp.txt
改成binding.gyp
,也许对你有帮助
【参考方案1】:
我在 macOS Big Sur 11.5.1 上处理 Angular 10 项目时遇到了这个问题
这个关于堆栈溢出的答案为我解决了 - https://***.com/a/55590251/10622142
-
删除 package-lock.json
运行命令 => npm install
【讨论】:
这个答案和another you posted一模一样。如果您认为此问题重复,建议重复。 @Tyler2P “建议重复”到底是什么意思?你的意思是给另一个线程的链接并说这是这里的重复吗?【参考方案2】:您正试图在当前工作目录 (CWD) /usr/local/bin
中运行 node-gyp rebuild
,因此 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
【讨论】:
运行node-gyp rebuild
对我来说一直失败,但完整的 npm install
完成了这项工作【参考方案3】:
先全局安装node-gyp:
sudo npm -g install node-gyp
请看这个answer
【讨论】:
【参考方案4】:我在使用较新版本的节点时遇到了这个问题。我最好的解决方法是使用节点版本管理器 (nvm) 之类的东西来恢复到旧版本的节点,然后再次运行 npm install
。
【讨论】:
【参考方案5】:从外观上看(不是 100% 确定)/usr/local/bin
在您的计算机中不存在。但是从堆栈跟踪很难说。
【讨论】:
【参考方案6】:如果有疑问,请先重新安装npm install -g node-gyp
。
最佳做法是运行node-gyp rebuild
。从项目的根目录运行它。此外,您的 binding.gyp
应该在根目录中,指向依赖项(其他地方)。
通常不需要手动运行node-gyp configure
。
【讨论】:
以上是关于尝试配置或重建 node-gyp 时,出现错误:mac osx mavericks的主要内容,如果未能解决你的问题,请参考以下文章
无法安装 aerospike,在“node-gyp 重建”步骤中使 aerospike 失败
azure web 应用程序中 lwip 的 node-gyp 重建问题:致命错误 C1083:无法打开包含文件:'nan.h':没有这样的文件或目录
节点 10 - npm 安装期间的“node-gyp 重建”错误