node.js - nodejs - node js password
Error al compilar bcrypt-node.js (5)
Estoy intentando instalar bycrpt a través de la npm install
usando Windows 7 Ultimate x64. Este es mi registro de instalación:
D:/Dropbox/Projekte/RZ/Finance-Man-GUI/node_modules/bcrypt>node "C:/Program File
s/nodejs/node_modules/npm/bin/node-gyp-bin//../../node_modules/node-gyp/bin/node
-gyp.js" rebuild
npm http GET https://registry.npmjs.org/mime/1.2.6
npm http 304 https://registry.npmjs.org/coffee-script
npm http 304 https://registry.npmjs.org/mkdirp
npm http 304 https://registry.npmjs.org/cssom
npm http 304 https://registry.npmjs.org/hooks/0.2.1
npm http 304 https://registry.npmjs.org/mongodb/1.2.8
npm http 304 https://registry.npmjs.org/ms/0.1.0
npm http 304 https://registry.npmjs.org/sliced/0.0.3
npm http 304 https://registry.npmjs.org/muri/0.1.0
npm http 304 https://registry.npmjs.org/mime/1.2.6
npm http GET https://registry.npmjs.org/crc/0.2.0
npm http GET https://registry.npmjs.org/pause/0.0.1
npm http GET https://registry.npmjs.org/bytes/0.1.0
npm http GET https://registry.npmjs.org/formidable/1.0.11
npm http GET https://registry.npmjs.org/qs/0.5.1
npm http GET https://registry.npmjs.org/bson/0.1.5
C:/Program Files (x86)/MSBuild/Microsoft.Cpp/v4.0/Microsoft.CppBuild.targets(29
7,5): warning MSB8003: Could not find WindowsSDKDir variable from the registry.
TargetFrameworkVersion or PlatformToolset may be set to an invalid version nu
mber. [D:/Dropbox/Projekte/RZ/Finance-Man-GUI/node_modules/bcrypt/build/bcrypt_
lib.vcxproj]
blowfish.cc
bcrypt.cc
bcrypt_node.cc
../src/bcrypt.cc(232): warning C4267: ''='' : conversion from ''size_t'' to ''unsign
ed char'', possible loss of data [D:/Dropbox/Projekte/RZ/Finance-Man-GUI/node_mo
dules/bcrypt/build/bcrypt_lib.vcxproj]
c:/users/timd/.node-gyp/0.8.18/deps/uv/include/ares.h(49): fatal error C1083: C
annot open include file: ''winsock2.h'': No such file or directory [D:/Dropbox/Pr
ojekte/RZ/Finance-Man-GUI/node_modules/bcrypt/build/bcrypt_lib.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `C:/Windows/Microsoft.NET/Framework64/v4.0.30319/msbuild.e
xe` failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:/Program Files/nodejs/node_modules/
npm/node_modules/node-gyp/lib/build.js:255:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:99:17)
gyp ERR! stack at Process._handle.onexit (child_process.js:678:10)
gyp ERR! System Windows_NT 6.1.7600
gyp ERR! command "node" "C://Program Files//nodejs//node_modules//npm//node_modu
les//node-gyp//bin//node-gyp.js" "rebuild"
gyp ERR! cwd D:/Dropbox/Projekte/RZ/Finance-Man-GUI/node_modules/bcrypt
gyp ERR! node -v v0.8.18
gyp ERR! node-gyp -v v0.8.2
gyp ERR! not ok
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! `cmd "/c" "node-gyp rebuild"` failed with 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
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 their info via:
npm ERR! npm owner ls bcrypt
npm ERR! There is likely additional logging output above.
npm ERR! System Windows_NT 6.1.7600
npm ERR! command "C://Program Files//nodejs////node.exe" "C://Program Files//nod
ejs//node_modules//npm//bin//npm-cli.js" "install"
npm ERR! cwd D:/Dropbox/Projekte/RZ/Finance-Man-GUI
npm ERR! node -v v0.8.18
npm ERR! npm -v 1.2.2
npm ERR! code ELIFECYCLE
npm http 304 https://registry.npmjs.org/crc/0.2.0
npm http 304 https://registry.npmjs.org/qs/0.5.1
npm http 304 https://registry.npmjs.org/pause/0.0.1
npm http 304 https://registry.npmjs.org/bson/0.1.5
npm http 304 https://registry.npmjs.org/formidable/1.0.11
npm http 304 https://registry.npmjs.org/bytes/0.1.0
> [email protected] install D:/Dropbox/Projekte/RZ/Finance-Man-GUI/node_modules/mongoos
e/node_modules/mongodb/node_modules/bson
> node install.js || (exit 0)
================================================================================
= =
= Attempting to build bson c++ extension =
= Windows: no build will be attempted as binaries are prepackaged =
= Unix: on failure the package will still install without the C++ extension =
= =
================================================================================
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! D:/Dropbox/Projekte/RZ/Finance-Man-GUI/npm-debug.log
npm ERR! not ok code 0
Ya instalé Python <v2.7 y .NET Framework SDK 2.0. También descargué un paquete llamado win7sdkx64.exe que fue lo que creo que es el SDK para Visual Studio. Me gustaron todas las dependencias en mi Path
siguiente manera:
%SystemRoot%/system32;%SystemRoot%;%SystemRoot%/System32/Wbem;%SYSTEMROOT%/System32/WindowsPowerShell/v1.0/;C:/Program Files/nodejs/;E:/Program Files/Java/jdk1.6.0_38/bin;C:/Program Files (x86)/Heroku/bin;C:/Program Files (x86)/ruby-1.9.2/bin;C:/Program Files (x86)/git/bin;C:/Program Files (x86)/git/cmd;E:/Program Files (x86)/Heroku/bin;C:/mongodb-win32-x86_64-2.2.2/bin;E:/xampp/mysql/bin;E:/xampp/apache/bin;E:/Python27;C:/Program Files (x86)/Microsoft Visual Studio 8/VC/vcpackages;C:/Program Files/Microsoft Windows Performance Toolkit/;E:/Program Files (x86)/openssl-0.9.8k_X64/bin
pero sigo teniendo estos errores. ¿Qué puedo probar ahora? Instalar Visual Studio completamente?
Cómo resolví esto
Mi entorno: Windows 8.1 x64, nodo v0.12.2, npm v2.7.5
Instale todos los componentes:
- Instale el último 2.x Python, descargue Python (descargué 2.7.9)
- Instalar Visual Studio 2012/13 Express (u otro)
- Instalar Windows SDK (para Windows 7/8)
- Instalar Win64 OpenSSL v1.0.1g, descargarlo desde aquí (he cargado "Win64 OpenSSL v1.0.2a" más reciente)
Después de que todos los componentes estén instalados [Importante]:
Abra "Indicador de comando del desarrollador para VS2012" como administrador
[para VS 2012] Ir a
C:/Program Files (x86)/Microsoft Visual Studio 11.0/Common7/Tools
[para VS 2013] Ir a
C:/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/Tools
Ejecute el comando "VsDevCmd.bat"
Entonces puedes ejecutar estos cmd:
npm install node-gyp -g
npm install bcrypt -g
Y para mí funcionó (tengo problemas para iniciar, porque desde el principio no ejecuto el comando "VsDevCmd.bat").
Nota:
- Si aún no se ejecuta, intente ejecutar el comando en un sencillo símbolo del sistema abierto como administrador.
- O si bcrypt se está instalando correctamente y está ejecutando npm install en su proyecto, falla. Compruebe la versión de bcrypt en package.json. En mi caso había "bcrypt": se especificó la dependencia "0.7.x", y tengo la versión más nueva de bcryot, así que después de cambiarla a "bcrypt": "0.8.x", todo se instaló correctamente.
Elimine el módulo bcrypt y use una biblioteca JavaScript nativa. bcrypt-nodejs no requiere compilación y proporciona casi la misma funcionalidad que la compilación compilada.
Esta es la forma correcta de instalar bcrypt sobre npm en Windows 7/8 x64
Pre:
- instalar Python http://www.python.org/download/releases/2.7.5/
- Instalar Visual Studio 2012/13 Express (u otro)
- Instalar Windows SDK (para Windows 7/8)
- Instalar Win64 OpenSSL v1.0.1g
Enviar:
Abra el "Indicador de comando del desarrollador para VS2012" como administrador e instale la prueba:
npm install node-gyp -g
npm install bcrypt -g
ps Mi entorno actual de Windows: win8 x64, nodo 0.10.x. Todo funciona bien.
ACTUALIZACIÓN (2016) : Nota para Windows 10 x64
Visual Studio Express Desktop Edition resuelve el problema de nodo-gyp. Simplemente instálalo y funcionará para node-gyp.
Campo de golf:
Mirando el error que veo
c: / users / timd.node-gyp / 0.8.18 / deps / uv / include / ares.h (49): error fatal C1083: No se puede abrir el archivo de inclusión: ''winsock2.h'': No existe ningún archivo o directorio
Tendrás que arreglarlo antes de que puedas avanzar más. Presumiblemente, ya sea que hayas descubierto esto o lo hayas cambiado ya que ha pasado un mes.
Eche un vistazo a winsock2.h, no hay tal archivo o directorio
Para cualquier persona que aún enfrenta errores al instalar bcrypt en 2017.
Un módulo npm ha sido lanzado para manejar los problemas de dependencia nativa de Windows por Felix Rieseberg y otros colaboradores. .NET Framework 4.5.1 es el único requisito para Windows 7 / Vista.
Con privilegios de administrador, ejecuta:
npm install --g --production windows-build-tools
npm install bcrypt