开源改变世界

第一次使用“npm install”进行全新安装在“node-gyp rebuild”上失败 #397

推推 grbl 2年前 (2023-02-04) 283次浏览
关闭
DouglasPearless 打开了这个问题 2017 年 8 月 21 日 · 3条评论
关闭

第一次使用“npm install”进行全新安装在“node-gyp rebuild”上失败#397

DouglasPearless 打开了这个问题 2017 年 8 月 21 日 · 3条评论

评论

第一次使用“npm install”进行全新安装在“node-gyp rebuild”上失败 #397

在 LaserWeb4 的新分支上运行“npm install”(准备添加一些新功能)在“node-gyp rebuild”步骤失败:

> buffertools@2.1.6 install /Users/douglaspearless/Documents/workspace/LaserWeb4/node_modules/unicode/node_modules/bufferstream/node_modules/buffertools
> node-gyp rebuild

  CXX(target) Release/obj.target/buffertools/buffertools.o
In file included from ../buffertools.cc:17:
In file included from /Users/douglaspearless/.node-gyp/0.12.3/src/node.h:61:
/Users/douglaspearless/.node-gyp/0.12.3/deps/v8/include/v8.h:5768:54: error: 'CreateHandle' is a protected member of 'v8::HandleScope'
  return Handle<T>(reinterpret_cast<T*>(HandleScope::CreateHandle(
                                        ~~~~~~~~~~~~~^~~~~~~~~~~~
/Users/douglaspearless/.node-gyp/0.12.3/deps/v8/include/v8.h:820:29: note: declared protected here
  static internal::Object** CreateHandle(internal::Isolate* isolate,
                            ^
1 error generated.
make: *** [Release/obj.target/buffertools/buffertools.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Darwin 16.7.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/douglaspearless/Documents/workspace/LaserWeb4/node_modules/unicode/node_modules/bufferstream/node_modules/buffertools
gyp ERR! node -v v0.12.3
gyp ERR! node-gyp -v v1.0.3
gyp ERR! not ok 

想法?

干杯
道格拉斯

第一次使用“npm install”进行全新安装在“node-gyp rebuild”上失败 #397
成员

哪个操作系统和节点版本?Windows 10 / Node 6.10.3 没有这个问题。

第一次使用“npm install”进行全新安装在“node-gyp rebuild”上失败 #397
成员

刚刚在错误消息中发现了它:

...
gyp ERR! System Darwin 16.7.0
...
gyp ERR! node -v v0.12.3
...

那个版本太旧了

第一次使用“npm install”进行全新安装在“node-gyp rebuild”上失败 #397

感谢您的指点,使用您的指点我去了 NPM 论坛并找到了npm/npm#17996并且本质上有一个错误阻止 npm 自行升级并通过以下方式修复:

curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"

然后安装适用于那些已经在他们的机器上安装了较旧的 NPM 的人。

所以我建议关闭这个问题:-)