Błąd kompilacji bcrypt-node.js
Próbuję zainstalować bycrpt przez npm install
używając Windows 7 Ultimate x64.
To jest mój dziennik instalacji:
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
Mam już zainstalowany Python Path w następujący sposób:
%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
Ale nadal dostaję te błędy.
Co mogę spróbować dalej? Zainstalować Visual Studio całkowicie? 6 answers
Porzuć moduł bcrypt i użyj natywnej biblioteki JavaScript. bcrypt-nodejs nie wymaga kompilacji i zapewnia prawie taką samą funkcjonalność jak skompilowany bcrypt.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-22 15:07:18
Jest to poprawny sposób instalacji bcrypt przez npm na Windows 7/8 x64
Pre:
- install Python http://www.python.org/download/releases/2.7.5 /
- zainstaluj Visual Studio 2012/13 Express (lub inne) W tym celu zainstaluj pakiet Windows SDK (dla Windows 7 / 8)
- Install Win64 OpenSSL v1. 0. 1 g
Post:
Otwórz "Wiersz poleceń programisty dla VS2012" jako Administrator i zainstaluj test:
npm install node-gyp -g
npm install bcrypt -g
P. S. moje obecne środowisko Windows: win8 x64, node 0.10.x. Wszystko działa ładnie.
Aktualizacja (2016) : Uwaga dla systemu Windows 10 x64
Visual Studio Express Desktop Edition rozwiązuje problem node-gyp. Wystarczy go zainstalować i będzie działać dla node-gyp.
Linki:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-22 16:44:53
Jak to rozwiązałem.
Moje środowisko: Windows 8.1 x64, Node v0.12.2, npm v2. 7. 5
Zainstaluj wszystkie komponenty:
- zainstaluj najnowszą wersję 2.x Python, Pobierz Python (pobrałem 2.7.9)
- zainstaluj Visual Studio 2012/13 Express (lub inne) W tym celu zainstaluj pakiet Windows SDK (dla Windows 7 / 8)
- zainstaluj Win64 OpenSSL v1.0.1 g, pobierz go z tutaj (załadowałem "Win64 OpenSSL v1. 0. 2 a" najnowsze)
Po zainstalowaniu wszystkich komponentów [ważne]:
Otwórz" wiersz poleceń programisty dla VS2012 " jako Administrator
[dla VS 2012] Przejdź do
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools
[dla VS 2013] Przejdź do
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools
Wykonaj polecenie " VsDevCmd.bat "
Następnie możesz wykonać te cmd:
npm install node-gyp -g
npm install bcrypt -g
I u mnie zadziałało (mam problem z uruchomieniem, bo od początku nie wykonuję komendy " VsDevCmd.bat").
Uwaga:
- Jeśli nadal nie wykonuje spróbuj wykonać polecenie w prostym wierszu polecenia otwartym jako Administrator
- lub jeśli bcrypt instaluje się pomyślnie i wykonuje npm install w Twoim projekcie to się nie powiedzie. Sprawdź wersję bcrypt w pakiecie.json. W moim przypadku było "bcrypt": "0.7.x "zależność została określona, a ja mam nowszą wersję bcryot, więc po zmianie jej na "bcrypt": "0.8.x", wszystko zainstalowane pomyślnie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-04 05:17:37
dla każdego, kto nadal ma problemy z instalacją bcrypt w 2017 roku.
Został wydany moduł npm do obsługi natywnych problemów z zależnościami Window przez Felixa Rieseberga i innych współpracowników. . NET Framework 4.5.1 jest jedynym wymogiem dla Windows 7 / Vista.
Z uprawnieniami administratora, Uruchom:
npm install --g --production windows-build-tools
npm install bcrypt
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-11 13:37:54
Patrząc na błąd widzę
C:\users\timd.node-gyp \ 0.8.18 \ deps \ uv \ include \ ares.h(49): błąd krytyczny C1083: nie można otworzyć pliku dołączonego: 'winsock2.h': No such file or directory
Musisz to naprawić, zanim będziesz mógł posunąć się dalej. Prawdopodobnie albo to rozgryzłeś, albo ruszyłeś dalej, odkąd minął miesiąc.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:26:06
Obecnie wystarczy użyć biblioteki bcryptjs, jest ona bardziej aktualna i kompiluje się dobrze na Windows 10.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2021-01-11 11:17:14