【问题标题】:cp: cannot stat ‘build/docker/gotools/bin/protoc-gen-go’: No such file or directorycp: cannot stat ‘build/docker/gotools/bin/protoc-gen-go’: 没有这样的文件或目录
【发布时间】:2018-02-10 17:18:45
【问题描述】:

我尝试构建 hyperledger fabric,并在http://hyperledger-fabric.readthedocs.io/en/latest/Setup/Chaincode-setup/#option-1-vagrant-development-environment 中安装了该项目作为指南。

当我尝试'make peer'时,命令显示为:

vagrant@ubuntu-1404:/opt/gopath/src/github.com/hyperledger/fabric/devenv$ cp: 无法统计 'build/docker/gotools/bin/protoc-gen-go': 没有这样的文件 或目录

我查看了文件夹并没有找到文件protoc-gen-go。这是否表明我在设置环境时错过了几个步骤?

【问题讨论】:

    标签: vagrant hyperledger hyperledger-fabric


    【解决方案1】:

    第 1 步:运行

    $go get -u github.com/golang/protobuf/protoc-gen-go
    

    下载protoc-gen-go

    第二步:cp

    $ cp $GOPATH/bin/protoc-gen-go build/docker/gotools/bin/
    

    然后继续你的制作。

    【讨论】:

    • 非常感谢,你让我开心!
    【解决方案2】:

    您可以在路径:$GOPATH/bin 中找到文件protoc-gen-go,然后将此文件复制到$GOPATH/src/github.com/hyperledger/fabric/build/docker/gotools/bin/。 如果所有事情都完成了,您可以运行:make peer,它会工作。

    【讨论】:

    • make: *** 没有将目标设为“对等”的规则。停止。
    【解决方案3】:

    我遇到了同样的问题。也许您的 GOPATH 和 GOROOT 变量与您的自定义路径冲突。

    我解决了这样的问题:

    • 删除 /usr/lib/go
    • 删除 /usr/local/go
    • 下载 protoc-gen-go ($go get -u github.com/golang/protobuf/protoc-gen-go)
    • protoc-gen-go 二进制文件在您的 go 工作区创建
    • 将 protoc-gen-go 二进制文件复制到 fabric/build/docker/gotools/bin/
    • 构建为对等

    希望对你有帮助

    【讨论】:

      【解决方案4】:

      你能试试吗:

      cd /opt/gopath/src/github.com/hyperledger/fabric/
      make peer
      

      看看它是否有效?看起来你在 devenv 子目录中。

      【讨论】:

      • 其实我搭建的环境是基于windows的,我不确定你提供的命令是否有效。你介意告诉我你在哪个路径中执行命令'make gotools'吗?
      • 看起来你在 vagrant 上使用 ubuntu 14.04。那应该是一样的。我在 /opt/gopath/src/github.com/hyperledger/fabric/ 中执行了命令
      • -bash: cd: /opt/gopath/src/github.com/hyperledger/fabric/: 没有这样的文件或目录
      【解决方案5】:

      当 Docker 返回导致构建失败的权限问题时,我遇到了同样的问题。

      一旦发生这种情况,即使您修复了 Docker 问题,构建过程也不会成功。

      相反,一旦 Docker 被修复,删除 gotools 文件夹并再次运行 make

      Makefile:245: recipe for target 'build/docker/gotools' failed
      make: *** [build/docker/gotools] Error 126
      user@:~/go/src/github.com/hyperledger/fabric$ rm -rf build/docker/gotools/
      user@:~/go/src/github.com/hyperledger/fabric$ make all
      

      【讨论】:

        猜你喜欢
        • 2020-12-05
        • 2019-03-17
        • 2019-05-31
        • 2017-01-24
        • 2022-01-15
        • 2017-07-02
        • 2016-08-14
        • 1970-01-01
        • 2022-01-26
        相关资源
        最近更新 更多