Amy Hyland Amy Hyland - 1 year ago 203
Javascript Question

using a pure-JavaScript implementation of bcrypt

Hi there I am using meteor js which is great but i am getting this message on my console .

W20161001-16:02:18.321(1)? (STDERR) Note: you are using a pure-JavaScript implementation of bcrypt.
W20161001-16:02:18.322(1)? (STDERR) While this implementation will work correctly, it is known to be
W20161001-16:02:18.322(1)? (STDERR) approximately three times slower than the native implementation.
W20161001-16:02:18.322(1)? (STDERR) In order to use the native implementation instead, run
W20161001-16:02:18.323(1)? (STDERR)
W20161001-16:02:18.323(1)? (STDERR) meteor npm install --save bcrypt
W20161001-16:02:18.323(1)? (STDERR)
W20161001-16:02:18.323(1)? (STDERR) in the root directory of your application.

I have node-gyp install globally, remove bcrypt from the packages file and running

meteor npm install --save bcrypt

to get this error

E:\Documents\Development\Projects\recipe-app\node_modules\bcrypt>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:449:14)
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:404:11
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:82:15)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd E:\Documents\Development\Projects\recipe-app\node_modules\bcrypt
gyp ERR! node -v v4.6.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "bcrypt"
npm ERR! node v4.6.0
npm ERR! npm v2.15.9

npm ERR! bcrypt@0.8.7 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the bcrypt@0.8.7 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the bcrypt 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 bcrypt
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR! npm owner ls bcrypt
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! E:\Documents\Development\Projects\recipe-app\npm-debug.log

Dont know what to do next really i am really new to meteor. I am on windows 10 using shell. node v4.6.0 Any help would be great.

Answer Source

You need to install an appropriate build environment to compile node addons (such as bcrypt). This means installing Python 2.7.x and some sort of toolchain.

You could try the windows-build-tools module which will try to install both Python and the minimum compiler environment via npm (or you can install the minimum compiler environment manually from here), otherwise for just the toolchain part there is always Visual C++ Express/Community (Desktop version).