安装 Hyperledger Composer 时出错
Posted
技术标签:
【中文标题】安装 Hyperledger Composer 时出错【英文标题】:Error while installing Hyperledger Composer 【发布时间】:2019-05-01 01:08:00 【问题描述】:我一次又一次地遇到同样的错误。我尝试安装不同的 npm 版本,甚至将我的 Ubuntu 更新到 18.04,但无济于事。 我用于安装的命令是
npm install -g composer-cli@0.19
我得到的错误是:
gyp 错误!节点 -v v11.3.0
gyp 错误!节点gyp -v v3.8.0
gyp 错误!不行
node-pre-gyp 错误!构建错误
node-pre-gyp 错误!堆栈错误:执行失败 '/home/akshay/.nvm/versions/node/v11.3.0/bin/node /home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js 构建 --fallback-to-build --library=static_library --module=/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64-glibc/grpc_node。节点 --module_name=grpc_node --module_path=/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64 -glibc' (1)
node-pre-gyp 错误! ChildProcess 的堆栈。 (/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp 错误! ChildProcess.emit (events.js:182:13) 的堆栈
node-pre-gyp 错误!堆栈在可能关闭 (内部/child_process.js:978:16)
node-pre-gyp 错误! Process.ChildProcess._handle.onexit 处的堆栈 (内部/child_process.js:265:5)
node-pre-gyp 错误!系统 Linux 4.15.0-39-generic
node-pre-gyp 错误!命令 “/home/akshay/.nvm/versions/node/v11.3.0/bin/node” “/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/node_modules/.bin/node-pre-gyp” “安装” “--fallback-to-build” “--library=static_library”
node-pre-gyp 错误! cwd /home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc
node-pre-gyp 错误!节点 -v v11.3.0
node-pre-gyp 错误!节点预gyp -v v0.7.0
node-pre-gyp 错误!不行
无法执行'/home/akshay/.nvm/versions/node/v11.3.0/bin/node /home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js 构建 --fallback-to-build --library=static_library --module=/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64-glibc/grpc_node。节点 --module_name=grpc_node --module_path=/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64 -glibc' (1)
CXX(目标) 发布/obj.target/grpc/deps/grpc/src/core/lib/backoff/backoff.oe
CXX(目标) 发布/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_args.o
CXX(目标) 发布/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack.o
CXX(目标) 发布/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack_builder.o
在包含的文件中 ../deps/grpc/src/core/lib/channel/channel_stack_builder.h:24:0,
来自 ../deps/grpc/src/core/lib/channel/channel_stack_builder.cc:19:
../deps/grpc/src/core/lib/channel/channel_args.h:22:10:致命错误: grpc/compression.h: 没有这样的文件或目录
编译终止。
grpc.target.mk:394: 目标配方 '发布/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack_builder.o' 失败
制作:*** [发布/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack_builder.o] 错误 1
make: 离开目录 '/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/build'
gyp 错误!构建错误
gyp 错误!堆栈错误:make 失败,退出代码:2
gyp 错误! ChildProcess.onExit 处的堆栈 (/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23) 吉普错误! ChildProcess.emit (events.js:182:13) 的堆栈
gyp 错误! Process.ChildProcess._handle.onexit 处的堆栈 (内部/child_process.js:254:12)
gyp 错误!系统 Linux 4.15.0-39-generic
gyp 错误!命令“/home/akshay/.nvm/versions/node/v11.3.0/bin/node” “/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js” “构建” “--fallback-to-build” “--library=static_library” “--module=/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64-glibc/grpc_node 。节点” “--module_name=grpc_node” “--module_path=/home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc/src/node/extension_binary/node-v67-linux-x64-glibc”
gyp 错误! cwd /home/akshay/.nvm/versions/node/v11.3.0/lib/node_modules/composer-cli/node_modules/grpc
gyp 错误!节点 -v v11.3.0
gyp 错误!节点gyp -v v3.8.0
gyp 错误!不行
npm WARN 可选跳过可选依赖:fsevents@1.2.4 (node_modules/composer-cli/node_modules/fsevents):
npm WARN notsup 跳过可选依赖:不支持的平台 对于 fsevents@1.2.4:想要 "os":"darwin","arch":"any"(当前: "os":"linux","arch":"x64")`
`npm 错误!代码生命周期
npm 错误!错误号 1
npm 错误! grpc@1.10.1 安装:node-pre-gyp 安装 --fallback-to-build --library=static_library npm 错误!退出状态 1
npm 错误!
npm 错误! grpc@1.10.1 安装脚本失败。
npm 错误!这可能不是 npm 的问题。有可能 上面的附加日志输出。
npm 错误!可以在以下位置找到此运行的完整日志:
npm 错误! /home/akshay/.npm/_logs/2018-11-29T02_27_29_404Z-debug.log
【问题讨论】:
【参考方案1】:彻底删除当前版本的node,尝试安装node 8.x版本。
要删除节点版本,请参阅: remove node completely
安装 node 8.x 版本:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
然后尝试安装npm install -g composer-cli@0.19
【讨论】:
对不起,但这不是人们为作曲家安装节点的推荐方式。我们明确声明不应使用 sudo 安装节点,因为这会使事情变得更加困难。 兄弟,我只是按照这个Linux论坛的指示:linuxconfig.org/… @david_k 使用 sudo 安装让我更轻松【参考方案2】:由于您使用的是nvm,这是管理节点的推荐方式,很容易切换到不同版本的节点,发出以下命令
nvm install 8
nvm use 8
现在正常安装作曲家。
【讨论】:
【参考方案3】:只需重新安装 npm
sudo npm uninstall npm -g
sudo apt update
sudo apt intall npm
【讨论】:
以上是关于安装 Hyperledger Composer 时出错的主要内容,如果未能解决你的问题,请参考以下文章
区块链100讲:Hyperledger Composer及其开发流程
如何使用Hyperledger Fabric和Composer构建区块链网络(上)
Hyperledger Composer REST API调用在概念中的某些变量上失败