Protocol Buffers: headers are not from the same version as link-time library

175 views
Skip to first unread message

Olzhas Kadyrakunov

unread,
Oct 22, 2017, 7:35:01 AM10/22/17
to Caffe Users
I'm trying to train the FCN model:
build/tools/caffe train -solver examples/FCN/voc-fcn8s/solver.prototxt
But keep getting the following error message:
I1022 17:36:00.233009 12298 layer_factory.hpp:77] Creating layer data
[libprotobuf FATAL google/protobuf/stubs/common.cc:61] This program requires version 3.4.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 as your link-time library.  (Version verification failed in "google/protobuf/descriptor.pb.cc".)
terminate called after throwing an instance of 'google::protobuf::FatalException'
  what():  This program requires version 3.4.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 as your link-time library.  (Version verification failed in "google/protobuf/descriptor.pb.cc".)

The protobuf version I have installed on my machine is 2.6.1. I went through all the files, including common.h and descriptor.pb.h,  that seemed to mention protobuf-3.4.0 as a requirement, and changed the GOOGLE_PROTOBUF_MIN_PROTOC_VERSION and GOOGLE_PROTOBUF_VERSION variables to 2006001. However, this didn't help to solve the problem. Oh, and I know that it is possible to train the model with protobuf-2.6.1 installed, since I did it before on another machine.

I would greatly appreciate any ideas on how to solve the problem!

Olzhas Kadyrakunov

unread,
Oct 22, 2017, 7:39:13 AM10/22/17
to Caffe Users
Oh, and the system is Ubuntu 16.04
Reply all
Reply to author
Forward
0 new messages