Hi, I'm trying to build github.com/tonistiigi/fsutil as a Debian package but am meeting with building problems -- the build failed because of the `undefined: proto.GoGoProtoPackageIsVersion3` error. The full build log included at the end of the message.
I did some researches on such problem, and it seems to have been caused by that the github.com:golang/protobuf version used by github.com/tonistiigi/fsutil (v1.3.1) and that provided by golang-gogoprotobuf-dev package (1.2.1) are different. Now here is the real problem, according to https://github.com/golang/protobuf/issues/763 If I bring golang-gogoprotobuf-dev package to v1.3.1, then all other packages currently depending on it will break. Anyone can confirm that? So, is the solution be that I create a golang-gogoprotobuf.v1.3-dev package and use it instead? Anyone knows how specific the golang/protobuf version has to be? Would the match between package version provided and consumed has to be exactly the same? I.e., do we need to create golang-gogoprotobuf.v1.3.1-dev then later golang-gogoprotobuf.v1.3.6-dev etc? Please help/comment. thx. The full build log: dpkg-buildpackage: info: source package golang-github-tonistiigi-fsutil dpkg-buildpackage: info: source version 0.0~git20200225.013a9fe-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Tong Sun <suntong...@users.sourceforge.net> dpkg-source -i --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --builddirectory=_build --buildsystem=golang --with=golang dh_auto_clean -O--builddirectory=_build -O--buildsystem=golang dh_autoreconf_clean -O--builddirectory=_build -O--buildsystem=golang dh_clean -O--builddirectory=_build -O--buildsystem=golang debian/rules binary dh binary --builddirectory=_build --buildsystem=golang --with=golang dh_update_autotools_config -O--builddirectory=_build -O--buildsystem=golang dh_autoreconf -O--builddirectory=_build -O--buildsystem=golang dh_auto_configure -O--builddirectory=_build -O--buildsystem=golang dh_auto_build -O--builddirectory=_build -O--buildsystem=golang cd _build && go install -trimpath -v -p 2 github.com/tonistiigi/fsutil github.com/tonistiigi/fsutil/bench github.com/tonistiigi/fsutil/cmd/receive github.com/tonistiigi/fsutil/cmd/send github.com/tonistiigi/fsutil/cmd/walk github.com/tonistiigi/fsutil/copy github.com/tonistiigi/fsutil/types github.com/tonistiigi/fsutil/util internal/cpu runtime/internal/atomic runtime/internal/sys internal/bytealg runtime/internal/math internal/race sync/atomic runtime unicode unicode/utf8 math/bits math internal/testlog runtime/cgo encoding unicode/utf16 crypto/internal/subtle crypto/subtle internal/reflectlite sync math/rand errors sort io strconv bytes reflect internal/oserror syscall time internal/poll internal/fmtsort internal/syscall/unix strings os path context github.com/containerd/continuity/syscallx fmt path/filepath io/ioutil encoding/binary golang.org/x/sys/unix os/user github.com/containerd/continuity/sysx bufio encoding/base64 archive/tar encoding/json log regexp/syntax github.com/sirupsen/logrus text/scanner regexp hash crypto github.com/pkg/errors github.com/gogo/protobuf/proto github.com/docker/docker/pkg/fileutils github.com/opencontainers/go-digest github.com/gogo/protobuf/sortkeys golang.org/x/sync/errgroup crypto/cipher crypto/aes math/big github.com/tonistiigi/fsutil/types # github.com/tonistiigi/fsutil/types src/github.com/tonistiigi/fsutil/types/stat.pb.go:27:11: undefined: proto.GoGoProtoPackageIsVersion3 src/github.com/tonistiigi/fsutil/types/wire.pb.go:27:11: undefined: proto.GoGoProtoPackageIsVersion3 encoding/hex flag crypto/rand github.com/containerd/continuity/fs github.com/tonistiigi/fsutil/copy dh_auto_build: error: cd _build && go install -trimpath -v -p 2 github.com/tonistiigi/fsutil github.com/tonistiigi/fsutil/bench github.com/tonistiigi/fsutil/cmd/receive github.com/tonistiigi/fsutil/cmd/send github.com/tonistiigi/fsutil/cmd/walk github.com/tonistiigi/fsutil/copy github.com/tonistiigi/fsutil/types github.com/tonistiigi/fsutil/util returned exit code 2 make: *** [debian/rules:4: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 debuild: fatal error at line 1182: