Установить bcrypt без Visual Studio

Я пытаюсь установить bcrypt через npm и получаю ошибку Failed at the [email protected] install script..

У меня Windows 8 x64, узел версии 0.10.29.

Глядя на зависимости bcrypt, я понимаю, что мне нужен node-gyp, для которого, очевидно, нужны Visual Studio 2012 и Python. Серьезно? Мне действительно нужно установить полную IDE, которую я не собираюсь использовать для этого модуля с одним узлом?

Это компилятор node-gyp или какой-то другой небольшой компонент из VS, который я могу установить, который добьется цели?

Буду рад любым предложениям о том, как заставить это работать с минимальными возможными дополнениями.


person Rob Allsopp    schedule 24.06.2014    source источник
comment
Согласно документации, у вас должен быть установлен как минимум VS Express. Если вам интересно, почему это так, или если вы можете вместо этого установить небольшое подмножество функций, вам, вероятно, будет лучше спросить на их github: github.com/TooTallNate/node-gyp   -  person Abe Miessler    schedule 25.06.2014
comment
Неудивительно, что многие скомпилированные расширения зависят от компилятора. Однако вы можете найти чистую альтернативу JavaScript.   -  person tadman    schedule 25.06.2014


Ответы (1)


Как упоминалось ранее, вы можете бесплатно установить VC++ Express (и Windows SDK). Однако, если вас это действительно беспокоит, вы можете использовать bcrypt совместимый с API модуль, который реализован на чистом javascript, однако вы увидите падение производительности.

Я также должен отметить, что прямо сейчас в npm есть много (полезных) модулей, которые требуют компиляции, поэтому есть вероятность, что вы получите больше пользы от компилятора (в будущем), чем вы думаете.

person mscdex    schedule 24.06.2014
comment
Очень нравится часть без зависимостей. Шифрование и дешифрование паролей в любом случае должно быть медленным, верно? - person Rob Allsopp; 25.06.2014
comment
Как кто-то может беспокоиться об установке Visual Studio и Windows SDK на свой Windows Server, верно? Конечно, давайте оставим эти ГБ дерьма на моем сервере. Чистый JS, скомпилированный и запущенный V8, работает довольно быстро. Вот чистое JS-решение для bcrypt. Я хотел бы увидеть эталон. - person Christiaan Westerbeek; 28.08.2014
comment
Есть по крайней мере тесты для модуля чистого JS, с которым я связался, сравнивая против скомпилированного аддона. - person mscdex; 28.08.2014
comment
@ChristiaanWesterbeek Кроме того, вам не нужно устанавливать Visual Studio и т. Д. В ваших производственных системах, только в ваших системах разработки. Затем вы можете развернуть скомпилированный аддон на своем сервере Windows. - person mscdex; 28.08.2014
comment
@mscdex Как вы можете это сделать? компилировать аддон, а затем распространять его на рабочей машине? Любые подсказки? Спасибо ! - person Arnaud Janssens; 25.02.2015
comment
@ArnaudJanssens Когда вы успешно скомпилируете аддон, в build/Release/ (или build/Debug/, если вы собрали его с установленным флагом отладки) есть файл .node. Все, что вам нужно сделать, это скопировать этот файл с вашим проектом, так как это то, что вы require() получите в своем аддоне. - person mscdex; 25.02.2015
comment
@mscdex Спасибо, у меня есть этот файл, но я не знаю, как его использовать. Есть ли у вас какие-либо ссылки, предоставляющие дополнительную информацию? Обратите внимание, что я совершенно новичок в компиляции аддонов узлов, требующих и т. д. - person Arnaud Janssens; 25.02.2015