NPM安装错误-Node-Pre-Gyp

5
当我尝试运行npm-install时,会出现以下错误信息:
npm ERR! Windows_NT 6.3.9600 npm ERR! argv "C:\Program Files (x86)\nodejs\node.exe" "C:\Program Files (x8 6)\nodejs\node_modules\npm\bin\npm-cli.js" "install" npm ERR! node v4.0.0 npm ERR! npm v2.14.2 npm ERR! code ELIFECYCLE
npm ERR! v8-debug@0.4.6 install: node-pre-gyp install --fallback-to-build npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the v8-debug@0.4.6 install script 'node-pre-gyp install --fallback-to-build'. npm ERR! 这很可能是v8-debug包的问题,而不是npm本身的问题。npm ERR! 告诉作者在你的系统上失败了:npm ERR! node-pre-gyp install --fallback-to-build npm ERR! 您可以通过以下方式获取其信息:npm ERR! npm owner ls v8-debug npm ERR! 上面很可能有其他日志输出。
请问您是否知道如何找到实际的错误(日志有点令人生畏)?我尝试了一些方法(安装VS C++ redistrib、npm install --msvs_version=2013等),但都没有用。
更新:我最终还是从Node v4.0.0回退到了NODE v0.12。虽然这并不是解决问题的方法,但它让我暂时避开了这个问题。

1
首先运行 npm audit fix --force - Albert Renshaw
然后只需要执行 npm install 即可。 - Albert Renshaw
2个回答

7
前往:http://www.devdocs.io,查看npm部分。必须使用桌面,并尽可能使用Windows(Mac布局因某种原因很奇怪)。按照“重置npm缓存”的详细步骤进行操作。
Node-gyp是一个麻烦的问题,经常会在安装过程中出现错误。每次我回到长时间未使用的环境并尝试再次使用它时,都会遇到麻烦。
或者,您可以卸载node,然后尝试使用chocolatey(如果您使用的是Windows)或brew(如果您使用的是Mac)重新安装。在安装到Mac时,请确保使用sudo命令。
您最有可能需要清除npm缓存,可能需要重新安装nodejs,也可能需要重新安装node-gyp。
注意:在执行上述步骤之前,请确保您的配置兼容,包括用于node-gyp的Python版本。 (https://www.npmjs.com/package/node-gyp) 此外,我已经解决了多次C ++可再发行的问题,而没有触及任何与C ++相关的内容,这样您就知道此错误不表示C ++,而是本地设置和与node + npm交互的兼容软件版本(例如,您的Python版本与node-gyp交互)。
没有明确的“运行这个和那个”来解决问题,您必须自己摸索,我可以向您保证,您将不止一次地这样做。但是,您越多地修复node + npm + node-gyp,就越能够快速解决将来的所有问题。上面的链接应该能够轻松解决您的问题。只需按照指示缓慢而彻底地进行操作即可。

1
不幸的是,我已经尝试了所有这些步骤,但都没有用。我已经完整安装了VS。 - user472292
@user472292 如上所述,您的Visual Studio(C ++)安装不太可能影响node-gyp。有时,设置为Python环境变量的Python安装文件夹设置为错误版本。如果您使用Windows添加/删除程序卸载nodejs,则可以修复它。还要添加/删除Python安装,然后再使用chocolatey安装两者。在执行任何这些安装时,请确保以“管理员”身份打开命令行!有时,如果您不在Windows上的管理员命令行上,安装也可能会出现问题。 - Mike Horstmann
1
没能成功,但感谢提到 node-gyp 真是个噩梦。 - Nino Filiu

0

我所做的就是卸载Node,然后重新安装,在安装过程中勾选告诉你安装所需的依赖项并完成安装。

如果问题仍然存在,请找出导致此错误的软件包,并单独安装它。 例如: npm install -g node-gyp npm install bcrypt


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接