0

go (openblockchain) で書かれたオープン ソース プロジェクトをコンパイルしています。すると、次のエラーが表示されますgo build。誰でもこの問題で私を助けることができますか

コンパイル エラー

> go build
../go/src/github.com/openblockchain/obc-peer/openchain/util/utils.go:28:2: cannot find package "google/protobuf" in any of:
    /usr/src/pkg/google/protobuf (from $GOROOT)
    /home/vichu/go/src/google/protobuf (from $GOPATH)

追加情報

ここでスタックオーバーフローで質問を参照しましたが、それでも問題を解決できません。ここに私が持っているすべてのものに関するいくつかの詳細があります:

Protoc のバージョンは最新です。

> protoc --version 
libprotoc 3.0.0

私の環境変数

> echo $GOPATH
/home/vichu/go
> echo $GOBIN
/home/vichu/go/bin

Protobuf は、README を使用してビルドされています。

~/go/src/github.com/golang/protobuf$ ls
AUTHORS  CONTRIBUTORS  jsonpb  LICENSE  Makefile  Make.protobuf  proto  protoc-gen-go  proto.pb.go  ptypes  README.md

アップデート

Util.go回答で述べたように、ソースコードで次のことを行いました。ソースコードはオープンソースで、ここにリンクがあります

-       gp "google/protobuf"
+       gp "github.com/google/protobuf"

私がするときgo get、以下はエラーです

> go get github.com/google/protobuf
can't load package: package github.com/google/protobuf: no buildable Go source files in /home/vichu/go/src/github.com/google/protobuf
4

2 に答える 2

0

*.pb.go ファイルの最後に、「gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00 ....」のようなものもないと思います。

問題は、生成に間違ったコンパイラを使用していることです。

そう:

1) https://github.com/google/protobuf/releasesから protobuf を再インストールし ます。

2)次に(私はubuntuを使用しており、プロトコンパイラもあります): apt remove protobuf-compiler

*.proto ファイルを再構築します。バグを修正しました。

于 2018-07-16T03:53:32.047 に答える