Vikash Singh Vikash Singh - 22 days ago 6
Node.js Question

sails.js + npm module 'bcrypt' is not installing in windows 10

I have cloned a sails project which is using 'bcrypt' module and when i am trying to install it using command -

npm install --save bcrypt


but it gives me following error !!!.Also i am using npm version @3.6.0 and node version @5.6.0.Am not able to resolve this error shown below :

> bcrypt@0.8.5 install C:\Users\vikas\Documents\batua-web\node_modules\bcrypt
> node-gyp rebuild
> C:\Users\vikas\Documents\batua-web\node_modules\bcrypt>if not defined npm_config_node_gyp (node "C:\Program Files (x86)\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "" rebuild )Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
> C:\Users\vikas\Documents\batua-web\node_modules\bcrypt\build\bcrypt_lib.vcxproj(20,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
> gyp ERR! build error
> gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
> gyp ERR! stack at ChildProcess.onExit (C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
> gyp ERR! stack at emitTwo (events.js:100:13)
> gyp ERR! stack at ChildProcess.emit (events.js:185:7)
> gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
> gyp ERR! System Windows_NT 10.0.10586
> gyp ERR! command "C:\\Program Files (x86)\\nodejs\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node- gyp.js" "rebuild"
> gyp ERR! cwd C:\Users\vikas\Documents\batua-web\node_modules\bcrypt
> gyp ERR! node -v v5.6.0
> gyp ERR! node-gyp -v v3.2.1
> gyp ERR! not ok
> npm ERR! Windows_NT 10.0.10586
> npm ERR! argv "C:\\Program Files (x86)\\nodejs\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "--save" "bcrypt"
> npm ERR! node v5.6.0
> npm ERR! npm v3.6.0
> npm ERR! code ELIFECYCLE
> npm ERR! bcrypt@0.8.5 install: `node-gyp rebuild`
> npm ERR! Exit status 1
> npm ERR!
> npm ERR! Failed at the bcrypt@0.8.5 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 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 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! C:\Users\vikas\Documents\batua-web\npm-debug.log

Answer

From the logs I see that you are using windows operating system.

Here on this github page of node-gyp, it says you need to have the following

  • On Windows:
    • Python ([v2.7.10][python-v2.7.10] recommended, v3.x.x is not supported)
      • Make sure that you have a PYTHON environment variable, and it is set to drive:\path\to\python.exe not to a folder
    • Windows XP/Vista/7:
      • Microsoft Visual Studio C++ 2013 ([Express][msvc2013] version works well)
      • If the install fails, try uninstalling any C++ 2010 x64&x86 Redistributable that you have installed first
      • If you get errors that the 64-bit compilers are not installed you may also need the [compiler update for the Windows SDK 7.1]
    • Windows 7/8:
      • Microsoft Visual Studio C++ 2013 for Windows Desktop ([Express][msvc2013] version works well)
    • Windows 10:
    • All Windows Versions
      • For 64-bit builds of node and native modules you will also need the [Windows 7 64-bit SDK][win7sdk]
      • You may need to run one of the following commands if your build complains about WindowsSDKDir not being set, and you are sure you have already installed the SDK:

For others operating system you can visit the link to see their dependencies.