npm update fails with cryptonote

I’m installing the electroneum pool git. I ran npm update and I keep getting the same error, I’ve tried changing node version but that doesn’t make any difference.

Here is the error

root@ubuntu:~/pool# npm update

> bignum@0.12.5 install /root/pool/node_modules/bignum
> node-pre-gyp install --fallback-to-build

[bignum] Success: "/root/pool/node_modules/bignum/binding/bignum.node" is installed via remote

> cryptonote-util@0.0.3 install /root/pool/node_modules/cryptonote-util
> node-gyp rebuild

make: Entering directory '/root/pool/node_modules/cryptonote-util/build'
  CXX(target) Release/obj.target/cryptonote/src/main.o
  CXX(target) Release/obj.target/cryptonote/src/cryptonote_core/cryptonote_format_utils.o
../src/cryptonote_core/cryptonote_format_utils.cpp: In function 'bool cryptonote::check_proof_of_work(const cryptonote::block&, cryptonote::difficulty_type, crypto::hash&':
../src/cryptonote_core/cryptonote_format_utils.cpp:938:3: warning: no return statement in function returning non-void [-Wreturn-type]
   }
   ^
  CC(target) Release/obj.target/cryptonote/src/crypto/tree-hash.o
  CXX(target) Release/obj.target/cryptonote/src/crypto/crypto.o
../src/crypto/crypto.cpp: In function 'std::size_t crypto::rs_comm_size(std::size_t)':
../src/crypto/crypto.cpp:224:58: error: value-initialization of incomplete type 'crypto::rs_comm:: []'
     return sizeof(rs_comm) + pubs_count * sizeof(rs_comm().ab[0]);
                                                          ^
cryptonote.target.mk:116: recipe for target 'Release/obj.target/cryptonote/src/crypto/crypto.o' failed
make: *** [Release/obj.target/cryptonote/src/crypto/crypto.o] Error 1
make: Leaving directory '/root/pool/node_modules/cryptonote-util/build'
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/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:12)
gyp ERR! System Linux 4.10.0-38-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/local/bin/node-gyp" "rebuild"
gyp ERR! cwd /root/pool/node_modules/cryptonote-util
gyp ERR! node -v v4.7.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
cryptonote-pool@0.0.1 /root/pool
├── async@1.5.2 
├── base58-native@0.1.4 
├── bignum@0.12.5 
├── cli-color@1.1.0 
├── dateformat@1.0.12 
├── multi-hashing@0.0.9  (git://github.com/zone117x/node-multi-hashing.git#73996fe77104108f2d66ef750b3e1bce42e4d8f0)
└── redis@0.12.1 

npm ERR! Linux 4.10.0-38-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "update"
npm ERR! node v4.7.2
npm ERR! npm  v3.5.2
npm ERR! code ELIFECYCLE

npm ERR! cryptonote-util@0.0.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the cryptonote-util@0.0.3 install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the cryptonote-util package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs cryptonote-util
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls cryptonote-util
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /root/pool/npm-debug.log

Answer

npm bignum requires Python version 2.7 installed.

Found out from another poster that Python 3+ does not run some functions in my libraries. Install Python 2.7 and try with new export paths to fix this problem.

https://www.python.org/download/releases/2.7/

 set PYTHONPATH=C:\Python27
 set PYTHON=%PYTHONPATH%\python.exe

Reinstall the bignum library. A recompile may be needed.

  rm -fR ./node_modules/bignum/*
  npm install bignum --save

Attribution
Source : Link , Question Author : Casper Round , Answer Author : Colt

Leave a Comment