Compilation fails as gazebo and ignition-msgs require different protobuf versions
When compiling latest sources for Gazebo on ubuntu 16.04, I get the following error:
This file was generated by an older version of protoc which is incompatible with your Protocol Buffer headers. Please regenerate this file with a newer version of protoc.
Well, in fact looks less tidy:
I tried to downgrade protobuf version to 2.6 (the one required by currently installed ignition-msgs), but... then compilation fails because 2.6 is too old for current gazebo code. I also tried to install ignition-msgs from sources, but it installs only msgs1 messages, while gazebo compilation fails with msg0 (honestly, I have no idea what all this msg0, 1, 2... mean).
Any suggestion? Thanks!
Asked by corot on 2017-11-14 16:08:06 UTC
Comments
What are the branches you're building for each library?
Asked by chapulina on 2017-11-14 16:50:33 UTC
default in all cases
Asked by corot on 2017-11-20 18:11:18 UTC
do you have a previous installation of ign-msgs? I see your includes are coming from
msgs0
, but the default branch is already on version 1.Asked by chapulina on 2017-11-20 18:20:52 UTC
yes, I tried to remove all gazebo-related packages before compiling, as explained in the tutorial. and yes, that's why I think current gazebo and ign-msgs sources are not compatible; gazebo tries to compile using msg0 that are missing on ign-msgs
Asked by corot on 2017-11-21 08:27:43 UTC
Ah you're right, Gazebo default currently wants ign-msgs0: https://bitbucket.org/osrf/gazebo/src/b4ea1ead18551e1e787183ed511e0b2810ef5e2a/cmake/SearchForStuff.cmake?at=default&fileviewer=file-view-default#SearchForStuff.cmake-733
Asked by chapulina on 2017-11-21 11:11:08 UTC
I'm running into the same problems. When I tried to write my own plugins for gazebo using ignition msgs, the compiling passed with 2.6.1 ,but gazebo running failed and throw out error below: [libprotobuf FATAL google/protobuf/stubs/common.cc:61] This program requires version 3.12.0 of the Protocol Buffer runtime library, but the installed version is 2.6.1. Please update your library. If you compiled the program yourself, make sure that your headers are from the same version of Protocol Buffers
Asked by wfcola on 2020-06-09 04:43:28 UTC