tcpexmachina / remy

403 stars 78 forks source link

Protobuf : non-virtual destructor for google::protobuf::internal::true_type #52

Closed mmjac10 closed 6 years ago

mmjac10 commented 6 years ago

I was trying to run remy source code using intructions as provided in readme. I am using protobuf 3.5.1 version and Ubuntu version is 14.04. When I ran the 'make' command after running ./autogen.sh and ./configure repectively, i received this error:

In file included from configrange.hh:4:0, from evaluator.cc:3: ../protobufs/dna.pb.h:4210:20: error: base class ‘struct google::protobuf::internal::integral_constant<bool, true>’ has a non-virtual destructor [-Werror=effc++] template <> struct is_proto_enum< ::RemyBuffers::MemoryRange_Axis> : ::google::protobuf::internal::true_type {};

Please help me resolve this error. Thankyou

keithw commented 6 years ago

Remy builds out-of-the-box on Ubuntu 14.04 LTS using the prepackaged libprotobuf-dev and protobuf-compiler packages. You can see the .travis.yml file for an exact recipe of how it gets built.

It also builds out-of-the-box on Ubuntu 17.10 using the libprotobuf-dev and protobuf-compiler 3.0.0 packages there.

The easiest way to get this error to disappear is to just use the prepackaged protobuf packages instead of installing yourself from source. The second-easiest way is probably just to remove -Werror from the compiler command line (in configure.ac). We can help you debug further if you want; please post a full log of all the commands you typed to install protobuf, configure remy to find it, and then the full build log.