答案 0 :(得分:4)
来自github文档node-Gyp
被列为先决条件,因为它需要构建scrypt
。确保安装node-Gyp
使用npm install -g node-gyp
要成功使用此插件,您还需要使用Microsoft windows-build-tools
安装所有必需的工具和配置使用npm install --global --production windows-build-tools
从提升的PowerShell或CMD.exe(以管理员身份运行)。
其他选项和替代方案请参阅node-gyp
documentation
安装scrypt
之前
按照at github
答案 1 :(得分:1)
首先您需要安装windows-build-tools
首先运行此命令
> npm install --global --production windows-build-tools
答案 2 :(得分:1)
对于NodeJS 10.5.0及更高版本
我的回答可能有点离题,但是在为C / C ++编译期间为 NodeJS v12 安装scrypt
库时遇到了类似的错误:带有node-gyp
的模块会出现很多编译警告和错误。
尽管有一个优雅的解决方案。
自版本 10.5.0 起,NodeJS具有crypto.scrypt(...)
函数,该函数(以及crypto
模块中的其他几个函数)几乎可以覆盖所有实际用例。>
因此,一个不错的解决方案听起来像是:从您的代码中删除scrypt
-package,并使用crypto
-native模块中的适当功能。
可悲的是,但在大多数情况下,这并不是真正业务的最佳解决方案