Catkin build failed
ROS MELODIC 18.04
I am trying to build after i installed ros melodic navigation stack and later I removed it but I am getting this error when i am running catkin build. Previously it used to work fine
Errors << mavlink_sitl_gazebo:make /home/sai/catkin_ws/logs/mavlink_sitl_gazebo/build.make.002.log
In file included from /home/sai/catkin_ws/build/mavlink_sitl_gazebo/CommandMotorSpeed.pb.cc:13:0:
/usr/local/include/google/protobuf/wire_format_lite_inl.h:674:49: error: no ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WritePrimitiveNoTagToArray(const google::protobuf::RepeatedField<T>&, google::protobuf::uint8* (*)(T, google::protobuf::uint8*), google::protobuf::uint8*)’ member function declared in class ‘google::protobuf::internal::WireFormatLite’
uint8* (*Writer)(T, uint8*), uint8* target) {
^
/usr/local/include/google/protobuf/wire_format_lite_inl.h:690:49: error: no ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteFixedNoTagToArray(const google::protobuf::RepeatedField<T>&, google::protobuf::uint8* (*)(T, google::protobuf::uint8*), google::protobuf::uint8*)’ member function declared in class ‘google::protobuf::internal::WireFormatLite’
uint8* (*Writer)(T, uint8*), uint8* target) {
^
/usr/local/include/google/protobuf/wire_format_lite_inl.h:706:15: error: prototype for ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteInt32NoTagToArray(const google::protobuf::RepeatedField<int>&, google::protobuf::uint8*)’ does not match any in class ‘google::protobuf::internal::WireFormatLite’
inline uint8* WireFormatLite::WriteInt32NoTagToArray(
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:607:15: error: candidate is: static google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteInt32NoTagToArray(google::protobuf::int32, google::protobuf::uint8*)
inline uint8* WireFormatLite::WriteInt32NoTagToArray(int32 value,
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:710:15: error: prototype for ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteInt64NoTagToArray(const google::protobuf::RepeatedField<long int>&, google::protobuf::uint8*)’ does not match any in class ‘google::protobuf::internal::WireFormatLite’
inline uint8* WireFormatLite::WriteInt64NoTagToArray(
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:611:15: error: candidate is: static google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteInt64NoTagToArray(google::protobuf::int64, google::protobuf::uint8*)
inline uint8* WireFormatLite::WriteInt64NoTagToArray(int64 value,
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:714:15: error: prototype for ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteUInt32NoTagToArray(const google::protobuf::RepeatedField<unsigned int>&, google::protobuf::uint8*)’ does not match any in class ‘google::protobuf::internal::WireFormatLite’
inline uint8* WireFormatLite::WriteUInt32NoTagToArray(
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:616:15: error: candidate is: static google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteUInt32NoTagToArray(google::protobuf::uint32, google::protobuf::uint8*)
inline uint8* WireFormatLite::WriteUInt32NoTagToArray(uint32 value,
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:718:15: error: prototype for ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteUInt64NoTagToArray(const google::protobuf::RepeatedField<long unsigned int>&, google::protobuf::uint8*)’ does not match any in class ‘google::protobuf::internal::WireFormatLite’
inline uint8* WireFormatLite::WriteUInt64NoTagToArray(
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:620:15: error: candidate is: static google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteUInt64NoTagToArray(google::protobuf::uint64, google::protobuf::uint8*)
inline uint8* WireFormatLite::WriteUInt64NoTagToArray(uint64 value,
^~~~~~~~~~~~~~
/usr/local/include/google/protobuf/wire_format_lite_inl.h:722:15: error: prototype for ‘google::protobuf::uint8* google::protobuf::internal::WireFormatLite::WriteSInt32NoTagToArray(const google::protobuf::RepeatedField<int>&, google::protobuf::uint8*)’ does not match any in class ‘google::protobuf::internal::WireFormatLite’
inline ...
Seeing all the errors about Protobuf prototypes having changed: perhaps you've (inadvertently) changed the version of Protobuf installed on your system. That could cause something like this.
@gvdhoorn So What should I do now??
Figure out whether you've changed the Protobuf package you have on your system (fi by installing an update).
Other than that: I wouldn't know.
@gvdhoorn I think one of my colleagues when he used my laptop changed it seems but he is not sure what he had changed. He is pretty new to this and when the error came and googled it and done something. But he is not sure what he had done. So is there any other way to figure it out??