Node.js 使用npm i编译本机节点模块失败,可用于节点gyp重建

Node.js 使用npm i编译本机节点模块失败,可用于节点gyp重建,node.js,npm,node-gyp,Node.js,Npm,Node Gyp,我正在尝试使用 npm i 这会出错 gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:305:16) gyp ERR! stack

我正在尝试使用

npm i
这会出错

gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:305:16)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.14393
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 C:\bitbucket\node\native_modules
gyp ERR! node -v v6.10.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
但是,如果使用手动运行node gyp命令

node-gyp rebuild
那么它工作得很好

我注意到
node gyp--version
返回
v3.6.0
,而在上面的错误消息中,它正在运行
v3.4.0

如何更新
npm
以使用较新版本(似乎可以正常工作)

还有,为什么在旧版本上会失败


我试过这里的说明,它们似乎不起作用。我使用的是Windows 10。

我现在可以用了。以下是我所做的:

打开命令提示符(以管理员身份运行)。将cd刻录到节点安装文件夹,然后运行:

C:\Program Files\nodejs\node_modules\npm>npm uninstall node-gyp --save

C:\Program Files\nodejs\node_modules\npm>npm install node-gyp --save