无法安装leveldown npm软件包,node-gyp错误MSBuild.exe失败,退出代码为:1

  • 节点版本:节点:v12.13.0 npm:6.12.0
  • 平台:Windows 10

在尝试安装levelDown时,安装在node-gyp上失败

gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:210:5)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Windows_NT 10.0.17763
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd D:\Source\Project\node_modules\leveldown
gyp ERR! node -v v12.13.0
gyp ERR! node-gyp -v v5.0.5

我已尝试解决此问题的东西:

  • 已安装python最新版本
  • 使用c ++开发工具安装Visual Studio 2017社区版本
  • 设置VCTargetsPath和MSBuild环境变量
  • 在Windows注册表中设置VCTargetsPath
  • 尝试运行npm install --global --production Windows-build-tools

但到目前为止似乎没有任何作用

请帮助

bigege 回答:无法安装leveldown npm软件包,node-gyp错误MSBuild.exe失败,退出代码为:1

在尝试了许多事情之后,SO发现问题出在节点版本上,我使用的是节点版本12.0.0,尝试降级到版本11.15.0并成功了。

,

我遇到一个问题,其中将leveldown安装为依赖项导致另一个软件包(orbit-db-http-api)失败。 它是package-lock.json中的leveldown的旧版本,因此,即使显式安装最新版本npm i leveldown@5.0.3也会失败,

> leveldown@5.0.3 install /home/teide/randomCode/OrbitDB/orbit-db-http-api/node_modules/orbit-db-cache/node_modules/leveldown
> node-gyp-build


> leveldown@3.0.2 install /home/teide/randomCode/OrbitDB/orbit-db-http-api/node_modules/orbit-db-keystore/node_modules/leveldown
> prebuild-install || node-gyp rebuild

删除存储库中附带的package-lock.json并重新安装就可以了(无需降级Node)

本文链接:https://www.f2er.com/3101688.html

大家都在问