zone117x / node-multi-hashing

94 stars 582 forks source link

Failed to build multihashing with npm > 9.11.2 #80

Open TnTBass opened 4 years ago

TnTBass commented 4 years ago

I can get this to build with npm 9.11.2, but anything newer (including the newest LTS - 12.18.1) will fail.

A few errors I noticed during the build:

../multihashing.cc:128:45: error: no matching function for call to ‘v8::Value::ToObject()’ 128 | Local target = args[0]->ToObject(); ../multihashing.cc:133:47: error: no matching function for call to ‘v8::Value::Uint32Value()’ 133 | unsigned int nValue = args[1]->Uint32Value(); ../multihashing.cc:134:47: error: no matching function for call to ‘v8::Value::Uint32Value()’ 134 | unsigned int rValue = args[2]->Uint32Value();

The output at the end: make: *** [multihashing.target.mk:159: Release/obj.target/multihashing/multihashing.o] Error 1 make: Leaving directory '/home/tnt/nomp/node_modules/multi-hashing/build' gyp ERR! build error gyp ERR! stack Error: make failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/home/tnt/.nvm/versions/node/v12.18.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23) gyp ERR! stack at ChildProcess.emit (events.js:315:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12) gyp ERR! System Linux 5.4.0-39-generic gyp ERR! command "/home/tnt/.nvm/versions/node/v12.18.1/bin/node" "/home/tnt/.nvm/versions/node/v12.18.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /home/tnt/nomp/node_modules/multi-hashing gyp ERR! node -v v12.18.1 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! multi-hashing@0.0.9 install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the multi-hashing@0.0.9 install script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Unfortunately, I don't have the skills to fix this (update this to be compatible with a newer node version) myself. This looks like the newer V8 engine has deprecated some methods that make this code no longer work.

Any chance someone smarter than me can figure this out?

OlMi1 commented 2 years ago

Did you find an answer? I have the same issue