singa icon indicating copy to clipboard operation
singa copied to clipboard

Update for protobuf version range, breaks with v3 protobuf

Open 3dprintscanner opened this issue 5 years ago • 2 comments

Building source as per from with the USE_MODULES=ON flag pulls in protobuf 3.3.0 and the compilation fails with message /src/caffe.pb.cc:31115:35: error: ‘MergeFromFail’ is not a member of ‘google::protobuf::internal’ ::google::protobuf::internal::MergeFromFail(__FILE__, __LINE__);

This is caused by the caffe.proto file being built against the proto 2.xx schema end emitting a c++ file with a call to MergeFromFail which was deprecated in the 3.x.x version of protobuf.

This is a temp message to show the compatibility requirements to get a functional build.

Full solution is to migrate to v3 protobuf or remove dependency entirely

edit: can remove caffe

3dprintscanner avatar May 04 '19 14:05 3dprintscanner

if it is the problem of the proto 2.xx scheme, should fix this issue by upgrading the scheme to v3? instead of just changing the documentation?

nudles avatar May 04 '19 14:05 nudles

if it is the problem of the proto 2.xx scheme, should fix this issue by upgrading the scheme to v3? instead of just changing the documentation?

@nudles Looks like it's possible to do that, however default values are deprecated in protobuf 3.0 and the caffe.proto file has some non-standard defaults set, not sure how those get handled in all the code consuming those objects.

3dprintscanner avatar May 04 '19 14:05 3dprintscanner