我正在安装 electroneum 池 git。我运行了 npm update,但一直出现相同的错误,我尝试更改节点版本,但没有任何变化。
这是错误
root@ubuntu:~/pool# npm 更新 >[电子邮件保护]安装 /root/pool/node_modules/bignum > node-pre-gyp 安装--fallback-to-build [bignum] 成功:“/root/pool/node_modules/bignum/binding/bignum.node”已通过远程安装 >[电子邮件保护]安装 /root/pool/node_modules/cryptonote-util > node-gyp 重建 make:进入目录 '/root/pool/node_modules/cryptonote-util/build' CXX (目标) 发布/obj.target/cryptonote/src/main.o CXX(目标)发布/obj.target/cryptonote/src/cryptonote_core/cryptonote_format_utils.o ../src/cryptonote_core/cryptonote_format_utils.cpp: 在函数 'bool cryptonote::check_proof_of_work(const cryptonote::block&, cryptonote::difficulty_type, crypto::hash&' 中: ../src/cryptonote_core/cryptonote_format_utils.cpp:938:3:警告:返回非 void 的函数中没有返回语句 [-Wreturn-type] } ^ CC (目标) 发布/obj.target/cryptonote/src/crypto/tree-hash.o CXX (目标) 发布/obj.target/cryptonote/src/crypto/crypto.o ../src/crypto/crypto.cpp: 在函数‘std::size_t crypto::rs_comm_size(std::size_t)’中: ../src/crypto/crypto.cpp:224:58: 错误:不完整类型‘crypto::rs_comm:: []’的值初始化 返回 sizeof(rs_comm) + pubs_count * sizeof(rs_comm().ab[0]); ^ cryptonote.target.mk:116: 目标‘Release/obj.target/cryptonote/src/crypto/crypto.o’的配方失败 制作:*** [Release/obj.target/cryptonote/src/crypto/crypto.o] 错误 1 make:离开目录 '/root/pool/node_modules/cryptonote-util/build' gyp ERR!构建错误 gyp ERR!堆栈错误:`make` 失败,退出代码:2 gyp ERR!ChildProcess.onExit 处的堆栈(/usr/local/lib/node_modules/node-gyp/lib/build.js:258:23) gyp ERR!emitTwo 处的堆栈(events.js:87:13) gyp ERR!ChildProcess.emit 处的堆栈(events.js:172:7) gyp ERR!堆栈位于 Process.ChildProcess._handle.onexit(internal/child_process.js:211:12) gyp ERR!系统 Linux 4.10.0-38-generic gyp ERR!命令“/usr/bin/nodejs”“/usr/local/bin/node-gyp”“重建” gyp ERR!cwd /root/pool/node_modules/cryptonote-util gyp ERR!节点-v v4.7.2 gyp 错误!node-gyp -v v3.6.2 gyp ERR!不好 [电子邮件保护]/根/池 ──[电子邮件保护] ──[电子邮件保护] ──[电子邮件保护] ──[电子邮件保护] ──[电子邮件保护] ──[电子邮件保护] (git://github.com/zone117x/node-multi-hashing.git#73996fe77104108f2d66ef750b3e1bce42e4d8f0) └──[电子邮件保护] npm 错误!Linux 4.10.0-38-generic npm 错误!argv“/usr/bin/nodejs”“/usr/bin/npm”“更新” npm 错误!节点 v4.7.2 npm 错误! npm v3.5.2 npm ERR!代码 ELIFECYCLE npm 错误![电子邮件保护]安装:`node-gyp rebuild` npm ERR!退出状态 1 npm 错误! npm ERR!失败于[电子邮件保护]安装脚本“node-gyp rebuild”。 npm ERR!请确保您安装了最新版本的 node.js 和 npm。 npm ERR!如果出现此问题,则很可能是 cryptonote-util 包的问题, npm ERR!不是 npm 本身。 npm ERR!告诉作者这在你的系统上失败了: npm ERR!node-gyp 重建 npm ERR!您可以通过以下方式获取有关如何为此项目打开问题的信息: npm ERR!npm 错误 cryptonote-util npm ERR!如果不可用,您可以通过以下方式获取其信息: npm ERR!npm 所有者 ls cryptonote-util npm ERR!上面可能还有额外的日志输出。 npm ERR!请在任何支持请求中包含以下文件: npm 错误!/root/pool/npm-debug.log
答案1
npm bignum需要安装 Python 2.7 版本。
从另一位发帖者那里得知,Python 3+ 无法运行我的库中的某些函数。安装 Python 2.7 并尝试使用新的导出路径来修复此问题。
https://www.python.org/download/releases/2.7/
set PYTHONPATH=C:\Python27
set PYTHON=%PYTHONPATH%\python.exe
重新安装 bignum 库。可能需要重新编译。
rm -fR ./node_modules/bignum/*
npm install bignum --save