I\'m trying to install bcrypt on CentOS server but I got the following error:
info postuninstall bcrypt@0.5.0
ERR! bcrypt@0.5.0 install: `make build`
ERR! `s
Pre-built binaries are usually available for bcrypt in a few hours after a new release of bcrypt or after a few days after a new NodeJS version is released.
However, remember that binaries are only provided as a convenience.
If you see an error such as:
`You need the following packages on CentOS / RHEL / Fedora
gcc-c++
- In order to install a compiler chain to compile the node modules.make
- To run the generated Makefile by node-gyp, which invokes compilers in orderpython
- RHEL and CentOS come with the required version of python installedMake sure all dependencies are installed with this command,
yum install -y gcc-c++ make
and then proceed with the bcrypt installation.
For other systems see: https://github.com/kelektiv/node.bcrypt.js/wiki/Installation-Instructions
There is also a native-js version of bcrypt which does not require compiling. https://github.com/shaneGirish/bcrypt-nodejs
npm install bcrypt-nodejs
The api is very similar to the compiled version. The following is taken directly from the readme
Synchronous
var hash = bcrypt.hashSync("bacon");
bcrypt.compareSync("bacon", hash); // true
bcrypt.compareSync("veggies", hash); // false
Asynchronous
bcrypt.hash("bacon", null, null, function(err, hash) {
// Store hash in your password DB.
});
// Load hash from your password DB.
bcrypt.compare("bacon", hash, function(err, res) {
// res == true
});
bcrypt.compare("veggies", hash, function(err, res) {
// res = false
});
For me the answer was to ensure that I had gcc, openssl and node-gyp installed.
To install gcc and openssl, use yum:
sudo yum install gcc-c++ openssl-devel
To install node-gyp (globally), use npm:
npm install -g node-gyp
Then the npm install of bcrypt worked just fine on centos
I got the same issue doing npm install bcrypt. The other option is to install it from source.
git clone git://github.com/ncb000gt/node.bcrypt.js.git
cd node.bcrypt.js
node-gyp configure
node-gyp build
Rename the node.bcrypt.js folder to bcrypt, and move it into your node_modules of your project.
You can install node-gyp by doing npm install -g node-gyp (-g installs it globally).