2016-11-18 4 views
0

на узле Windows 10: v6.7.0, npm: v4.0.1 node-gyp: v3.4.0, я пытаюсь сделать npm install --save bcrypt, что сталкиваюсь с этими ошибками. это то, где у меня есть оба: python27 и python35-32 на моем пути.npm install bcrypt, gyp ERR! python

D:\myApp\node_modules\bcrypt>if not defined npm_config_node_gyp (node "C:\Users\myname\AppData\Roaming\npm\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: Python executable "C:\Users\myname\AppData\Local\Programs\Python\Python35-32\python.EXE" is v3.5.2, which is not supported by gyp. 
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0. 
gyp ERR! stack  at failPythonVersion (C:\Users\Amirhossein\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\configure.js:454:14) .... 

Я попытался установить с npm install --save --python=phyton2.7 bcrypt

это кажется нормально, но закончили установка с большим количеством предупреждений:

D:\myApp\node_modules\bcrypt>if not defined npm_config_node_gyp (node "C:\Users\myname\AppData\Roaming\npm\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. 
    blowfish.cc 
    bcrypt.cc 
    bcrypt_node.cc 
    win_delay_load_hook.cc 
..\src\bcrypt.cc(232): warning C4267: '=': conversion from 'size_t' to 'unsigned char', possible loss of data [D:\myApp\node_modules\bcrypt\build\bcrypt_lib.vcxproj] 
..\src\bcrypt_node.cc(76): warning C4244: 'argument': conversion from 'ssize_t' to 'unsigned char', possible loss of data [D:\myApp\node_modules\bcrypt\build\bcrypt_lib.vcxproj] 
..\src\bcrypt_node.cc(229): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data [D:\myApp\node_modules\bcrypt\build\bcrypt_lib.vcxproj] 
..\src\bcrypt_node.cc(230): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data [D:\myApp\node_modules\bcrypt\build\bcrypt_lib.vcxproj] 

он будет работать правильно? Каков правильный способ установки bcrypt? должен ли я изменить config на node-gyp?

ответ

2

простого решения: канава питон Bcrypt и использовать Bcrypt-nodejs вместо: https://github.com/shaneGirish/bcrypt-nodejs

+1

Этот функциональный эквивалент? –

+1

IMHO, это нормально, если вы не заботитесь о производительности (да, я знаю цель bcrypt, но при использовании bcrypt в чистом javascript по-прежнему возникает ненужное поражение производительности). – mscdex

-1

Если есть только предупреждения и нет компилятор ошибки (это было бы очевидно, так как вы увидите блок текста из НПХ говорят вам возникла проблема с установкой аддона), тогда он должен работать нормально.

0

Если вы открыты для звонка bcrypt, я бы предложил использовать bcryptjs, который совместим с bcrypt с нулевыми зависимостями. Да, это повлечет за собой performance hit, но если вы в порядке с этим, он вытащит вас из узла-gyp rebuild hell.

Смежные вопросы