node.js - NPM 无法在 Windows 上安装 "truffle"

标签 node.js npm ethereum solidity truffle

我正在尝试使用 npm 安装“truffle”,但我不熟悉 NodeJS,也不明白为什么 npm 不会安装它。我在具有管理员权限的 Powershell 中尝试 npm install -g truffle ,在几行输出后,我收到了以下错误消息 block :

 gyp ERR! build error
 gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
 gyp ERR! stack     at ChildProcess.onExit (F:\nodeJS\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
 gyp ERR! stack     at emitTwo (events.js:87:13)
 gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
 gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
 gyp ERR! System Windows_NT 10.0.14393
 gyp ERR! command "F:\\nodeJS\\node.exe" "F:\\nodeJS\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
 gyp ERR! cwd C:\Users\Max\AppData\Roaming\npm\node_modules\truffle\node_modules\ether-pudding\node_modules\ethereumjs-testrpc\node_modules\ethereumjs-wallet\node_modules\scrypt.js\node_modules\scrypt
 gyp ERR! node -v v4.5.0
 gyp ERR! node-gyp -v v3.4.0
 gyp ERR! not ok\

然后在许多黄线之后我终于得到了这个:

 npm ERR! Windows_NT 10.0.14393
 npm ERR! argv "F:\\nodeJS\\node.exe" "F:\\nodeJS\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "truffle"
 npm ERR! node v4.5.0
 npm ERR! npm  v2.15.9
 npm ERR! code ELIFECYCLE

 npm ERR! scrypt@6.0.3 install: `node-gyp rebuild`
 npm ERR! Exit status 1
 npm ERR!
 npm ERR! Failed at the scrypt@6.0.3 install script 'node-gyp rebuild'.
 npm ERR! This is most likely a problem with the scrypt 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 information on how to open an issue for this project with:
 npm ERR!     npm bugs scrypt
 npm ERR! Or if that isn't available, you can get their info via:
 npm ERR!
 npm ERR!     npm owner ls scrypt
 npm ERR! There is likely additional logging output above.

 npm ERR! Please include the following file with any support request:
 npm ERR!     F:\eth_truffle\npm-debug.log

之后就没有发生任何其他事情,过了一会儿它就终止了。我当前所在的目录中没有任何文件(除了单个日志文件),cmd/powershell 也找不到关键字“truffle”。

正如我所说,我以前从未使用过 NodeJS,并且不知道这一切意味着什么。我可以做什么来让 truffle 运行?

最佳答案

您的安装在node-gyp重建时失败。 node-gyp repo 中列出了此问题的解决方案。最快的是:

“选项 1:通过提升的 PowerShell 或 CMD.exe 使用 npm install --global --product windows-build-tools 使用 Microsoft 的 windows-build-tools 安装所有必需的工具和配置(以管理员身份运行)。”这将正确安装 Python 和 Visual Studio。

此外,您正在使用 Node 4.5。根据 Truffle Docs 推荐版本为 5+

关于node.js - NPM 无法在 Windows 上安装 "truffle",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39358117/

相关文章:

javascript - 语法错误: Unexpected token v in JSON at position 2

node.js - 未找到 Vue 命令

javascript - 在对显示模块进行单元测试时如何 stub 私有(private)函数

javascript - 如何上传 zip 文件并在 Express js 中为其内容提供永久链接

blockchain - 是否可以在 ERC721 合约中调用 ERC20 函数?

reactjs - 如何指定端口来运行基于 create-react-app 的项目?

npm - .npmignore : ignore whole folder except given file types

titanium - NPM install -g 在 Titanium 安装后不起作用

node.js - 什么是 cp .env.local env 以及如何使用它?

ethereum - Solidity 函数未返回预期数据