博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hyperledge 开发环境配置常见问题
阅读量:4313 次
发布时间:2019-06-06

本文共 5783 字,大约阅读时间需要 19 分钟。

一,安装工具

  VBOX

  vagrant

  vagrant proxy

      

  golang

二,下载源代码

  

  hyperledge

  gotools  

三.

1.

==> default: package golang.org/x/tools/go/gcimporter15: unrecognized import path "golang.org/x/tools/go/gcimporter15" (https fetch: Get https://golang.org/x/tools/go/gcimporter15?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)==> default: Makefile:51: recipe for target 'gotool.golint' failed==> default: make[2]: Leaving directory '/opt/gopath/src/github.com/hyperledger/fabric/gotools'==> default: make[2]: *** [gotool.golint] Error 1==> default: Makefile:56: recipe for target 'build/gopath/bin/golint' failed==> default: make[1]: Leaving directory '/opt/gopath/src/github.com/hyperledger/fabric/gotools'==> default: make[1]: *** [build/gopath/bin/golint] Error 2==> default: Makefile:90: recipe for target 'gotools' failed==> default: make: *** [gotools] Error 2The SSH command responded with a non-zero exit status. Vagrantassumes that this means the command failed. The output for this commandshould be in the log above. Please read the output to determine whatwent wrong.
View Code

 

1 export fabric_path=~/gopath/fabric2 mkdir -p $fabric_path/gotools/build/gopath/src/golang.org/x/3 git clone https://github.com/golang/tools.git4 mv tools $fabric_path/gotools/build/gopath/src/golang.org/x/5 cd $fabric_path/devenv6 vagrant destroy7 vagrant up

 

2.

 

是在执行如下命令是出错

curl -L https://github.com/hyperledger/fabric-chaintool/releases/download/$(CHAINTOOL_RELEASE)/chaintool > $@

https://github-cloud.s3.amazonaws.com/releases/52034138/f54fb054-9560-11e6-934a-5272acfba1b8?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAISTNZFOVBIJMK3TQ%2F20161128%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20161128T075224Z&X-Amz-Expires=300&X-Amz-Signature=a7eb3348572a9fa9a9bf044e54805cda9e6bbfcdfd6f21e1bd0783bd3964c5d9&X-Amz-SignedHeaders=host&actor_id=10493939&response-content-disposition=attachment%3B%20filename%3Dchaintool&response-content-type=application%2Foctet-stream

最终下载的地址是这个,由于s3.amazonaws.com被墙,所以下载失败;可以手工下载让后覆盖到 build/bin 下继续执行 make peer

解决办法

1)编辑Makefile文件(在宿主机中操作),将130行注释掉

1 build/bin/chaintool: Makefile2     @echo "Installing chaintool"3     @mkdir -p $(@D)4     #curl -L https://github.com/hyperledger/fabric-chaintool/releases/download/$(CHAINTOOL_RELEASE)/chaintool > $@5     chmod +x $@

2)将下载的chaintool复制到指定目录

export fabric_path=~/gopath/fabric#宿主机中执行cp ~/Downloads/chaintool $fabric_path/build/bincd $fabric_path/devenv#vagrant sshcd $GOPATH/src/github.com/hyperledger/fabricmake peer

3).

1 vagrant@hyperledger-devenv:v0.2.1-f046f3c:/opt/gopath/src/github.com/hyperledger/fabric$ make peer 2 make[1]: Entering directory '/opt/gopath/src/github.com/hyperledger/fabric/gotools' 3 Building github.com/golang/lint/golint -> golint 4 package golang.org/x/tools/go/gcimporter15: unrecognized import path "golang.org/x/tools/go/gcimporter15" (https fetch: Get https://golang.org/x/tools/go/gcimporter15?go-get=1: dial tcp 216.239.37.1:443: i/o timeout) 5 make[1]: *** [gotool.golint] Error 1 6 Makefile:51: recipe for target 'gotool.golint' failed 7 make[1]: Leaving directory '/opt/gopath/src/github.com/hyperledger/fabric/gotools' 8 Makefile:56: recipe for target '/opt/gotools/obj/gopath/bin/golint' failed 9 make: *** [/opt/gotools/obj/gopath/bin/golint] Error 210 Makefile:156: recipe for target 'build/docker/gotools' failed11 make: *** [build/docker/gotools] Error 2
View Code

1 #生成gotools二进制文件2 make gotools3 #复制到build/docker/gotools目录4 cp -r ./gotools/build/gopath/bin ./build/docker/gotools/5 make peer

 

4).

 build javaenv时下载gradle-2.12-bin.zip很长时间无响应

   是由于RUN wget https://services.gradle.org/distributions/gradle-2.12-bin.zip -P /tmp --quiet 命令连接国外服务器太慢导致,可以使用迅雷下载到本地,复制到

 $fabric_path/build/image/javaenv目录下,同时修改$fabric_path/image/javaenv下的Dockerfile.in文件后继续执行make peer即可

   

1 FROM hyperledger/fabric-baseimage:_BASE_TAG_ 2 #RUN wget https://services.gradle.org/distributions/gradle-2.12-bin.zip -P /tmp --quiet 3 ADD gradle-2.12-bin.zip /tmp  4 RUN unzip -q /tmp/gradle-2.12-bin.zip -d /opt && rm /tmp/gradle-2.12-bin.zip 5 RUN ln -s /opt/gradle-2.12/bin/gradle /usr/bin 6 ADD payload/javashim.tar.bz2 /root 7 ADD payload/protos.tar.bz2 /root 8 ADD payload/settings.gradle /root 9 WORKDIR /root10 # Build java shim after copying proto files from fabric/proto11 RUN core/chaincode/shim/java/javabuild.sh
View Code

 5).

1 Step 9 : RUN core/chaincode/shim/java/javabuild.sh2  ---> Running in 868d72341738
View Code

修改$fabric_path/core/chaincode/shim/java/build.gradle文件,增加maven的阿里源

1 buildscript { 2     repositories { 3         maven { url "http://maven.aliyun.com/nexus/content/groups/public" } 4         mavenLocal() 5         mavenCentral() 6         jcenter() 7     } 8     dependencies { 9         classpath 'com.google.protobuf:protobuf-gradle-plugin:0.7.6'10     }11 }
1 cp build/docker/gotools/bin/protoc-gen-go build/bin/chaintool build/goshim.tar.bz2 build/image/ccenv/payload2 cp: cannot stat 'build/docker/gotools/bin/protoc-gen-go': No such file or directory3 Makefile:191: recipe for target 'build/image/ccenv/payload' failed4 make: *** [build/image/ccenv/payload] Error 1
View Code

 

 

 

1 cp gotools/build/gopath/bin/* build/docker/gotools/bin2 make peer

 

vagrant下载镜像经常失败的问题

#使用迅雷下载 virtualbox.box#https://atlas.hashicorp.com/hyperledger/boxes/fabric-baseimage/versions/0.3.0/providers/virtualbox.box#https://atlas.hashicorp.com/hyperledger/boxes/fabric-baseimage#复制virtualbox.box文件到 ~/.vagrant.d/boxes/virtualbox.boxvagrant box add -name hyperledger/fabric-baseimage ~/.vagrant.d/boxes/virtualbox.box -c --force#修改 ~/.vagrant.d/boxes/hyperledger-VAGRANTSLASH-fabric-baseimage文件夹下的文件0的名称为0.3.0#http://stackoverflow.com/questions/28399324/download-vagrant-box-file-locally-from-atlas-and-configuring-itvagrant up

  

 

 

转载于:https://www.cnblogs.com/yanlixin/p/6103775.html

你可能感兴趣的文章
性能瓶颈
查看>>
cmd 导入数据库
查看>>
Makefile书写注意事项--个人择记(一)
查看>>
文件转码重写到其他文件
查看>>
场景3 Data Management
查看>>
树结构练习——排序二叉树的中序遍历
查看>>
AC自动机模板
查看>>
python 基本语法
查看>>
Swift - 点击箭头旋转
查看>>
git配置
查看>>
【hexo】01安装
查看>>
CI框架源码学习笔记2——Common.php
查看>>
005---书籍添加和编辑的提交数据
查看>>
使用case语句给字体改变颜色
查看>>
JAVA基础-多线程
查看>>
面试题5:字符串替换空格
查看>>
JSP九大内置对象及四个作用域
查看>>
ConnectionString 属性尚未初始化
查看>>
数据结构-栈 C和C++的实现
查看>>
发布功能完成
查看>>