#node.js #bcrypt #node-gyp
#node.js #bcrypt ( шифрование ) #узел-gyp
Вопрос:
Я пытаюсь установить bcrypt
через npm
, и я получаю Failed at the bcrypt@0.7.8 install script.
сообщение об ошибке.
Я на Windows 8 x64, версия узла 0.10.29.
Просмотр bcrypt
зависимостей подсказывает мне, что мне нужно node-gyp
, для чего, по-видимому, нужны Visual studio 2012 и python. По-настоящему? Действительно ли мне нужно устанавливать полноценную среду разработки, которую я не собираюсь использовать для этого модуля с одним узлом?
Это компилятор node-gyp
или какой-то другой небольшой компонент из VS, который я могу установить, который сделает свое дело?
Хотелось бы получить какие-либо предложения о том, как заставить это работать с минимально возможными дополнительными затратами.
Комментарии:
1. Согласно документации, у вас должен быть установлен как минимум VS Express. Если вам интересно, почему это так, или если вы можете установить вместо этого небольшое подмножество функций, вам, вероятно, повезет больше, если вы спросите на их github: github.com/TooTallNate/node-gyp
2. Неудивительно, что многие скомпилированные расширения зависят от компилятора. Однако, возможно, вам удастся найти чистую альтернативу JavaScript.
Ответ №1:
Как упоминалось ранее, вы можете установить VC Express (и Windows SDK) бесплатно. Однако, если вас это действительно так беспокоит, вы можете использовать bcrypt
модуль, совместимый с API, который реализован на чистом javascript, однако вы увидите снижение производительности.
Я должен также отметить, что сейчас в npm есть много (полезных) модулей, которые требуют компиляции, так что, скорее всего, вы получите больше пользы от компилятора (в будущем), чем вы думаете.
Комментарии:
1. Очень нравится часть без зависимостей. Шифрование и расшифровка паролей в любом случае должны быть медленными, верно?
2. Как кто-то может беспокоиться об установке Visual Studio и Windows SDK на свой Windows Server правильно? Конечно, пусть этот гигабайт дерьма будет лежать на моем сервере. Чистый JS, скомпилированный и запущенный V8, работает довольно быстро. Вот чистое JS-решение для bcrypt . Я хотел бы увидеть тест.
3. Для модуля pure-JS, на который я ссылался, есть по крайней мере тесты для сравнения с скомпилированным дополнением.
4. @ChristiaanWesterbeek Кроме того, вам не нужно Устанавливать Visual Studio и т. Д. На ваши производственные системы, Только на ваши системы разработки. Затем вы можете развернуть скомпилированный аддон на свой Windows Server.
5. @mscdex Как ты можешь это делать? дополнить аддон, а затем распространить его на производственной машине? Есть какие-нибудь зацепки? Спасибо!