I added this line to package.json
"bcrypt": "0.8.0"
Installed 'node' package through apt-get;
After that issued in project directory
npm install
Got this output:
dog@ubuntu:~/Documents/sources/shopsforeveryone/Code$ npm install
npm http GET https://registry.npmjs.org/bcrypt/0.8.0
npm http 200 https://registry.npmjs.org/bcrypt/0.8.0
npm http GET https://registry.npmjs.org/bcrypt/-/bcrypt-0.8.0.tgz
npm http 200 https://registry.npmjs.org/bcrypt/-/bcrypt-0.8.0.tgz
npm http GET https://registry.npmjs.org/bindings/1.0.0
npm http GET https://registry.npmjs.org/nan/1.3.0
npm http 304 https://registry.npmjs.org/nan/1.3.0
npm http 304 https://registry.npmjs.org/bindings/1.0.0
> [email protected] install /home/dog/Documents/sources/shopsforeveryone/Code/node_modules/bcrypt
> node-gyp rebuild
/bin/sh: 1: node: not found
gyp: Call to 'node -e "require('nan')"' returned exit status 127. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/usr/share/node-gyp/lib/configure.js:431:16)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:797:12)
gyp ERR! System Linux 3.13.0-39-generic
gyp ERR! command "nodejs" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /home/dog/Documents/sources/shopsforeveryone/Code/node_modules/bcrypt
gyp ERR! node -v v0.10.25
gyp ERR! node-gyp -v v0.10.10
gyp ERR! not ok
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian
npm ERR! weird error 1
npm ERR! not ok code 0
It fails because of node, but node can't be outdated. What is the problem in?
Most likely you need to also
sudo apt-get install nodejs-legacy
to get the proper symlink for scripts that rely on the binary beingnode
and notnodejs
.Also as a side-note, since node.js still moves quicker than most Linux distro repositories, you might consider adding Chris Lea's PPA to keep up-to-date (especially to get the latest security fixes -- e.g. POODLE mitigation):
UPDATE: It is now recommended to use NodeSource repos instead, which also provide up-to-date versions of node and for a wider variety of Linux distros.