Blockstack App 在 npm install ERR 上失败!配置错误

Blockstack App Fails on npm install ERR! configure error

我正在尝试学习如何使用 blockstack https://docs.blockstack.org/browser/hello-blockstack.html,这是一种 react.js 类型的应用程序。

当我构建应用程序并 运行 npm 安装时,这是我收到的错误:

C:\Users\Davidb.TC\Desktop\blockstack\hello-world-tutorial\node_modules\tiny-secp256k1>if not defined npm_config_node_gyp (node "C:\Users\Davidb.TC\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "C:\Users\Davidb.TC\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Command failed: C:\Python37\python.EXE -c import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack   File "<string>", line 1
gyp ERR! stack     import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack                                ^
gyp ERR! stack SyntaxError: invalid syntax
gyp ERR! stack
gyp ERR! stack     at ChildProcess.exithandler (child_process.js:294:12)
gyp ERR! stack     at ChildProcess.emit (events.js:189:13)
gyp ERR! stack     at maybeClose (internal/child_process.js:970:16)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
gyp ERR! System Windows_NT 10.0.16299
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\Davidb.TC\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\Davidb.TC\Desktop\blockstack\hello-world-tutorial\node_modules\tiny-secp256k1
gyp ERR! node -v v10.15.3
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! tiny-secp256k1@1.0.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the tiny-secp256k1@1.0.1 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Davidb.TC\AppData\Roaming\npm-cache\_logs19-04-11T20_16_40_788Z-debug.log

有谁知道我必须做什么才能修复此错误?

这些类型的 node-gyp 错误可能会在系统上安装 Python 3 并且需要 Python2.7 时引起。 node-gyp 贡献者声称 Python3 支持目前并不完美,如果您遇到任何问题,建议使用 Python2.7。

虽然暂时没有必要更改 Python 版本,因为看起来您使用的是 Windows 机器,但在 node-gyp rebuild步。可能值得先尝试以下命令(确保您处于管理员模式下的 CMD 或 Powershell 中:

npm install -g windows-build-tools

node-gyp 需要 windows-build-tools 包才能在 Windows 上正常工作,如 here 所述。在此之后,再次尝试 运行 npm install


还是失败了?

如果问题仍然存在或发生与 node-gyp 相关的其他错误,您可能必须安装 Python2.7 并将 npm 设置为使用 Python2.7

npm config set python /path/to/executable/python2.7

您可以在 node-gyp 上阅读更多关于可能的问题以及如何解决它们的信息 node-gyp github page