BVLC / caffe

Caffe: a fast open framework for deep learning.
http://caffe.berkeleyvision.org/
Other
34.09k stars 18.7k forks source link

Make all does not work with gcc/g++ 4.8.5 at ubuntu 18.04 #6784

Open carlosost opened 5 years ago

carlosost commented 5 years ago

Issue summary

I am trying to compile Caffe static library (libcaffe.a) to use it in my project, but the command make all doesn't work with gcc/g++ version 4.8.5.

I am saying that, because using gcc/g++ version 7.4 works fine. Unfortunately, it is not an option for me yet, because another problem here

Steps to reproduce

  1. Create a docker container with Ubuntu 18.04 minimal
  2. apt-get update
  3. apt-get install libhdf5-serial-dev protobuf-compiler libprotobuf-dev libgflags-dev libgoogle-glog-dev libopenblas-dev libboost-dev libboost-all-dev
  4. git clone —branch 1.0 https://github.com/BVLC/caffe.git
  5. cd caffe
  6. mkdir build
  7. cd build
  8. cmake -DBLAS=open ..
  9. make all

Tried solutions

I tried to update the compiler, but as I told, I found another problem to use the libcaffe.a. here

System configuration

Issue checklist

Terminal output

... [ 75%] Building CXX object src/caffe/CMakeFiles/caffe.dir/util/upgrade_proto.cpp.o [ 75%] Linking CXX static library ../../lib/libcaffe.a [ 75%] Built target caffe Scanning dependencies of target extract_features [ 75%] Building CXX object tools/CMakeFiles/extract_features.dir/extract_features.cpp.o [ 76%] Linking CXX executable extract_features CMakeFiles/extract_features.dir/extract_features.cpp.o: In function std::string* google::MakeCheckOpString<int, int>(int const&, int const&, char const*)': extract_features.cpp:(.text._ZN6google17MakeCheckOpStringIiiEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIiiEEPSsRKT_RKT0_PKc]+0x43): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' CMakeFiles/extract_features.dir/extract_features.cpp.o: In function std::string* google::MakeCheckOpString<unsigned long, unsigned long>(unsigned long const&, unsigned long const&, char const*)': extract_features.cpp:(.text._ZN6google17MakeCheckOpStringImmEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringImmEEPSsRKT_RKT0_PKc]+0x44): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' CMakeFiles/extract_features.dir/extract_features.cpp.o: In function int feature_extraction_pipeline<float>(int, char**)': extract_features.cpp:(.text._Z27feature_extraction_pipelineIfEiiPPc[_Z27feature_extraction_pipelineIfEiiPPc]+0x974): undefined reference togoogle::protobuf::internal::emptystring' extract_features.cpp:(.text._Z27feature_extraction_pipelineIfEiiPPc[_Z27feature_extraction_pipelineIfEiiPPc]+0xe22): undefined reference to google::protobuf::MessageLite::SerializeToString(std::string*) const' ../lib/libcaffe.a(blob.cpp.o): In functionstd::string google::MakeCheckOpString<unsigned long, int>(unsigned long const&, int const&, char const)': blob.cpp:(.text._ZN6google17MakeCheckOpStringImiEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringImiEEPSsRKT_RKT0_PKc]+0x43): undefined reference to google::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(layer.cpp.o): In functionstd::string google::MakeCheckOpString<int, unsigned long>(int const&, unsigned long const&, char const)': layer.cpp:(.text._ZN6google17MakeCheckOpStringIimEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIimEEPSsRKT_RKT0_PKc]+0x44): undefined reference to google::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(absval_layer.cpp.o): In functionstd::string google::MakeCheckOpString<caffe::Blob, caffe::Blob>(caffe::Blob const&, caffe::Blob const&, char const)': absval_layer.cpp:(.text._ZN6google17MakeCheckOpStringIPN5caffe4BlobIfEES4_EEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIPN5caffe4BlobIfEES4_EEPSsRKT_RKT0_PKc]+0x44): undefined reference to google::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(absval_layer.cpp.o): In functionstd::string google::MakeCheckOpString<caffe::Blob, caffe::Blob>(caffe::Blob const&, caffe::Blob const&, char const)': absval_layer.cpp:(.text._ZN6google17MakeCheckOpStringIPN5caffe4BlobIdEES4_EEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIPN5caffe4BlobIdEES4_EEPSsRKT_RKT0_PKc]+0x44): undefined reference to google::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(batch_norm_layer.cpp.o): In functionstd::string google::MakeCheckOpString<float, float>(float const&, float const&, char const)': batch_norm_layer.cpp:(.text._ZN6google17MakeCheckOpStringIffEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIffEEPSsRKT_RKT0_PKc]+0x4d): undefined reference to google::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(batch_reindex_layer.cpp.o):batch_reindex_layer.cpp:(.text._ZN6google17MakeCheckOpStringIfiEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIfiEEPSsRKT_RKT0_PKc]+0x48): more undefined references togoogle::base::CheckOpMessageBuilder::NewString()' follow ../lib/libcaffe.a(data_layer.cpp.o): In function caffe::DataLayer<float>::DataLayerSetUp(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&)': data_layer.cpp:(.text._ZN5caffe9DataLayerIfE14DataLayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_[_ZN5caffe9DataLayerIfE14DataLayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_]+0x54): undefined reference togoogle::protobuf::MessageLite::ParseFromString(std::string const&)' ../lib/libcaffe.a(data_layer.cpp.o): In function caffe::DataLayer<float>::load_batch(caffe::Batch<float>*)': data_layer.cpp:(.text._ZN5caffe9DataLayerIfE10load_batchEPNS_5BatchIfEE[_ZN5caffe9DataLayerIfE10load_batchEPNS_5BatchIfEE]+0x122): undefined reference togoogle::protobuf::MessageLite::ParseFromString(std::string const&)' ../lib/libcaffe.a(data_layer.cpp.o): In function caffe::DataLayer<double>::DataLayerSetUp(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&)': data_layer.cpp:(.text._ZN5caffe9DataLayerIdE14DataLayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_[_ZN5caffe9DataLayerIdE14DataLayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_]+0x54): undefined reference togoogle::protobuf::MessageLite::ParseFromString(std::string const&)' ../lib/libcaffe.a(data_layer.cpp.o): In function caffe::DataLayer<double>::load_batch(caffe::Batch<double>*)': data_layer.cpp:(.text._ZN5caffe9DataLayerIdE10load_batchEPNS_5BatchIdEE[_ZN5caffe9DataLayerIdE10load_batchEPNS_5BatchIdEE]+0x122): undefined reference togoogle::protobuf::MessageLite::ParseFromString(std::string const&)' ../lib/libcaffe.a(hdf5_data_layer.cpp.o): In function std::string* google::MakeCheckOpString<unsigned int, int>(unsigned int const&, int const&, char const*)': hdf5_data_layer.cpp:(.text._ZN6google17MakeCheckOpStringIjiEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIjiEEPSsRKT_RKT0_PKc]+0x43): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(hdf5_output_layer.cpp.o): In function std::string* google::MakeCheckOpString<long, int>(long const&, int const&, char const*)': hdf5_output_layer.cpp:(.text._ZN6google17MakeCheckOpStringIliEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIliEEPSsRKT_RKT0_PKc]+0x43): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(infogain_loss_layer.cpp.o): In function caffe::InfogainLossLayer<double>::get_normalizer(caffe::LossParameter_NormalizationMode, int)': infogain_loss_layer.cpp:(.text._ZN5caffe17InfogainLossLayerIdE14get_normalizerENS_31LossParameter_NormalizationModeEi[_ZN5caffe17InfogainLossLayerIdE14get_normalizerENS_31LossParameter_NormalizationModeEi]+0x86): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(infogain_loss_layer.cpp.o): In function caffe::InfogainLossLayer<float>::get_normalizer(caffe::LossParameter_NormalizationMode, int)': infogain_loss_layer.cpp:(.text._ZN5caffe17InfogainLossLayerIfE14get_normalizerENS_31LossParameter_NormalizationModeEi[_ZN5caffe17InfogainLossLayerIfE14get_normalizerENS_31LossParameter_NormalizationModeEi]+0x86): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(infogain_loss_layer.cpp.o): In function caffe::InfogainLossLayer<float>::LayerSetUp(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&)': infogain_loss_layer.cpp:(.text._ZN5caffe17InfogainLossLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_[_ZN5caffe17InfogainLossLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_]+0x8f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(infogain_loss_layer.cpp.o): In function caffe::InfogainLossLayer<double>::LayerSetUp(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&)': infogain_loss_layer.cpp:(.text._ZN5caffe17InfogainLossLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_[_ZN5caffe17InfogainLossLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_]+0x8f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(recurrent_layer.cpp.o): In function std::string* google::MakeCheckOpString<std::string, std::string>(std::string const&, std::string const&, char const*)': recurrent_layer.cpp:(.text._ZN6google17MakeCheckOpStringISsSsEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringISsSsEEPSsRKT_RKT0_PKc]+0x4c): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(recurrent_layer.cpp.o): In function caffe::RecurrentLayer<float>::LayerSetUp(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&)': recurrent_layer.cpp:(.text._ZN5caffe14RecurrentLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_[_ZN5caffe14RecurrentLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_]+0x71c): undefined reference togoogle::protobuf::internal::emptystring' recurrent_layer.cpp:(.text._ZN5caffe14RecurrentLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5EES9[_ZN5caffe14RecurrentLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5EES9]+0x8b2): undefined reference to google::protobuf::internal::empty_string_' ../lib/libcaffe.a(recurrent_layer.cpp.o): In functioncaffe::RecurrentLayer::LayerSetUp(std::vector<caffe::Blob, std::allocator<caffe::Blob> > const&, std::vector<caffe::Blob, std::allocator<caffe::Blob> > const&)': recurrent_layer.cpp:(.text._ZN5caffe14RecurrentLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5EES9[_ZN5caffe14RecurrentLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5EES9]+0x72c): undefined reference to google::protobuf::internal::empty_string_' recurrent_layer.cpp:(.text._ZN5caffe14RecurrentLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_[_ZN5caffe14RecurrentLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_]+0x8c8): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(reduction_layer.cpp.o): In function caffe::ReductionLayer<double>::Forward_cpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&)': reduction_layer.cpp:(.text._ZN5caffe14ReductionLayerIdE11Forward_cpuERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_[_ZN5caffe14ReductionLayerIdE11Forward_cpuERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_]+0x94): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(reduction_layer.cpp.o): In function `caffe::ReductionLayer::Forward_cpu(std::vector<caffe::Blob, std::allocator<caffe::Blob> > const&, std::vector<caffe::Blob, std::allocator<caffe::Blob> > const&)': reduction_layer.cpp:(.text._ZN5caffe14ReductionLayerIfE11Forward_cpuERKSt6vectorIPNS_4BlobIfEESaIS5EES9[_ZN5caffe14ReductionLayerIfE11Forward_cpuERKSt6vectorIPNS_4BlobIfEESaIS5EES9]+0x94): undefined reference to `google::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(reduction_layer.cpp.o): In function caffe::ReductionLayer<float>::Backward_cpu(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&)': reduction_layer.cpp:(.text._ZN5caffe14ReductionLayerIfE12Backward_cpuERKSt6vectorIPNS_4BlobIfEESaIS5_EERKS2_IbSaIbEES9_[_ZN5caffe14ReductionLayerIfE12Backward_cpuERKSt6vectorIPNS_4BlobIfEESaIS5_EERKS2_IbSaIbEES9_]+0xb2): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' reduction_layer.cpp:(.text._ZN5caffe14ReductionLayerIfE12Backward_cpuERKSt6vectorIPNS_4BlobIfEESaIS5_EERKS2IbSaIbEES9[_ZN5caffe14ReductionLayerIfE12Backward_cpuERKSt6vectorIPNS_4BlobIfEESaIS5_EERKS2IbSaIbEES9]+0x171): undefined reference to `google::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(reduction_layer.cpp.o): In function caffe::ReductionLayer<double>::Backward_cpu(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<bool, std::allocator<bool> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&)': reduction_layer.cpp:(.text._ZN5caffe14ReductionLayerIdE12Backward_cpuERKSt6vectorIPNS_4BlobIdEESaIS5_EERKS2_IbSaIbEES9_[_ZN5caffe14ReductionLayerIdE12Backward_cpuERKSt6vectorIPNS_4BlobIdEESaIS5_EERKS2_IbSaIbEES9_]+0xb2): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(reduction_layer.cpp.o):reduction_layer.cpp:(.text._ZN5caffe14ReductionLayerIdE12Backward_cpuERKSt6vectorIPNS_4BlobIdEESaIS5_EERKS2IbSaIbEES9[_ZN5caffe14ReductionLayerIdE12Backward_cpuERKSt6vectorIPNS_4BlobIdEESaIS5_EERKS2IbSaIbEES9]+0x171): more undefined references to `google::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' follow ../lib/libcaffe.a(scale_layer.cpp.o): In function caffe::ScaleLayer<float>::LayerSetUp(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&)': scale_layer.cpp:(.text._ZN5caffe10ScaleLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_[_ZN5caffe10ScaleLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_]+0x89): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(scale_layer.cpp.o): In function caffe::ScaleLayer<double>::LayerSetUp(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&)': scale_layer.cpp:(.text._ZN5caffe10ScaleLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_[_ZN5caffe10ScaleLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_]+0x89): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(sigmoid_cross_entropy_loss_layer.cpp.o): In function caffe::SigmoidCrossEntropyLossLayer<float>::get_normalizer(caffe::LossParameter_NormalizationMode, int)': sigmoid_cross_entropy_loss_layer.cpp:(.text._ZN5caffe28SigmoidCrossEntropyLossLayerIfE14get_normalizerENS_31LossParameter_NormalizationModeEi[_ZN5caffe28SigmoidCrossEntropyLossLayerIfE14get_normalizerENS_31LossParameter_NormalizationModeEi]+0x86): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(sigmoid_cross_entropy_loss_layer.cpp.o): In function caffe::SigmoidCrossEntropyLossLayer<double>::get_normalizer(caffe::LossParameter_NormalizationMode, int)': sigmoid_cross_entropy_loss_layer.cpp:(.text._ZN5caffe28SigmoidCrossEntropyLossLayerIdE14get_normalizerENS_31LossParameter_NormalizationModeEi[_ZN5caffe28SigmoidCrossEntropyLossLayerIdE14get_normalizerENS_31LossParameter_NormalizationModeEi]+0x86): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(softmax_loss_layer.cpp.o): In function caffe::SoftmaxWithLossLayer<float>::get_normalizer(caffe::LossParameter_NormalizationMode, int)': softmax_loss_layer.cpp:(.text._ZN5caffe20SoftmaxWithLossLayerIfE14get_normalizerENS_31LossParameter_NormalizationModeEi[_ZN5caffe20SoftmaxWithLossLayerIfE14get_normalizerENS_31LossParameter_NormalizationModeEi]+0x86): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(softmax_loss_layer.cpp.o): In function caffe::SoftmaxWithLossLayer<double>::get_normalizer(caffe::LossParameter_NormalizationMode, int)': softmax_loss_layer.cpp:(.text._ZN5caffe20SoftmaxWithLossLayerIdE14get_normalizerENS_31LossParameter_NormalizationModeEi[_ZN5caffe20SoftmaxWithLossLayerIdE14get_normalizerENS_31LossParameter_NormalizationModeEi]+0x86): undefined reference togoogle::protobuf::internal::NameOfEnum(google::protobuf::EnumDescriptor const, int)' ../lib/libcaffe.a(softmax_loss_layer.cpp.o): In function caffe::SoftmaxWithLossLayer<float>::LayerSetUp(std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&, std::vector<caffe::Blob<float>*, std::allocator<caffe::Blob<float>*> > const&)': softmax_loss_layer.cpp:(.text._ZN5caffe20SoftmaxWithLossLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_[_ZN5caffe20SoftmaxWithLossLayerIfE10LayerSetUpERKSt6vectorIPNS_4BlobIfEESaIS5_EES9_]+0x5b): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(softmax_loss_layer.cpp.o): In function caffe::SoftmaxWithLossLayer<double>::LayerSetUp(std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&, std::vector<caffe::Blob<double>*, std::allocator<caffe::Blob<double>*> > const&)': softmax_loss_layer.cpp:(.text._ZN5caffe20SoftmaxWithLossLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_[_ZN5caffe20SoftmaxWithLossLayerIdE10LayerSetUpERKSt6vectorIPNS_4BlobIdEESaIS5_EES9_]+0x5b): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(net.cpp.o): In function caffe::Net<float>::ToProto(caffe::NetParameter*, bool) const': net.cpp:(.text._ZNK5caffe3NetIfE7ToProtoEPNS_12NetParameterEb[_ZNK5caffe3NetIfE7ToProtoEPNS_12NetParameterEb]+0x23): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(net.cpp.o): In function caffe::Net<double>::ToProto(caffe::NetParameter*, bool) const': net.cpp:(.text._ZNK5caffe3NetIdE7ToProtoEPNS_12NetParameterEb[_ZNK5caffe3NetIdE7ToProtoEPNS_12NetParameterEb]+0x23): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(net.cpp.o): In function caffe::Net<float>::Init(caffe::NetParameter const&)': net.cpp:(.text._ZN5caffe3NetIfE4InitERKNS_12NetParameterE[_ZN5caffe3NetIfE4InitERKNS_12NetParameterE]+0x1ce0): undefined reference togoogle::protobuf::Message::DebugString() const' ../lib/libcaffe.a(net.cpp.o): In function caffe::Net<double>::Init(caffe::NetParameter const&)': net.cpp:(.text._ZN5caffe3NetIdE4InitERKNS_12NetParameterE[_ZN5caffe3NetIdE4InitERKNS_12NetParameterE]+0x1cf8): undefined reference togoogle::protobuf::Message::DebugString() const' ../lib/libcaffe.a(solver.cpp.o): In function caffe::Solver<float>::Init(caffe::SolverParameter const&)': solver.cpp:(.text._ZN5caffe6SolverIfE4InitERKNS_15SolverParameterE[_ZN5caffe6SolverIfE4InitERKNS_15SolverParameterE]+0xf9): undefined reference togoogle::protobuf::Message::DebugString() const' ../lib/libcaffe.a(solver.cpp.o): In function caffe::Solver<double>::Init(caffe::SolverParameter const&)': solver.cpp:(.text._ZN5caffe6SolverIdE4InitERKNS_15SolverParameterE[_ZN5caffe6SolverIdE4InitERKNS_15SolverParameterE]+0xf9): undefined reference togoogle::protobuf::Message::DebugString() const' ../lib/libcaffe.a(adagrad_solver.cpp.o): In function std::string* google::MakeCheckOpString<int, float>(int const&, float const&, char const*)': adagrad_solver.cpp:(.text._ZN6google17MakeCheckOpStringIifEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIifEEPSsRKT_RKT0_PKc]+0x48): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(sgd_solver.cpp.o): In function caffe::SGDSolver<float>::SnapshotSolverStateToBinaryProto(std::string const&)': sgd_solver.cpp:(.text._ZN5caffe9SGDSolverIfE32SnapshotSolverStateToBinaryProtoERKSs[_ZN5caffe9SGDSolverIfE32SnapshotSolverStateToBinaryProtoERKSs]+0x38): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(sgd_solver.cpp.o): In function caffe::SGDSolver<double>::SnapshotSolverStateToBinaryProto(std::string const&)': sgd_solver.cpp:(.text._ZN5caffe9SGDSolverIdE32SnapshotSolverStateToBinaryProtoERKSs[_ZN5caffe9SGDSolverIdE32SnapshotSolverStateToBinaryProtoERKSs]+0x38): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(insert_splits.cpp.o): In function caffe::ConfigureSplitLayer(std::string const&, std::string const&, int, int, float, caffe::LayerParameter*)': insert_splits.cpp:(.text+0xc9f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(math_functions.cpp.o): In function std::string* google::MakeCheckOpString<double, double>(double const&, double const&, char const*)': math_functions.cpp:(.text._ZN6google17MakeCheckOpStringIddEEPSsRKT_RKT0_PKc[_ZN6google17MakeCheckOpStringIddEEPSsRKT_RKT0_PKc]+0x47): undefined reference togoogle::base::CheckOpMessageBuilder::NewString()' ../lib/libcaffe.a(upgrade_proto.cpp.o): In function caffe::UpgradeNetDataTransformation(caffe::NetParameter*)': upgrade_proto.cpp:(.text+0x983): undefined reference togoogle::protobuf::internal::emptystring' upgrade_proto.cpp:(.text+0x9d3): undefined reference to google::protobuf::internal::empty_string_' upgrade_proto.cpp:(.text+0xa23): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(upgrade_proto.cpp.o): In function caffe::UpgradeNetInput(caffe::NetParameter*)': upgrade_proto.cpp:(.text+0x16b5): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(upgrade_proto.cpp.o): In function caffe::UpgradeV1LayerParameter(caffe::V1LayerParameter const&, caffe::LayerParameter*)': upgrade_proto.cpp:(.text+0x2152): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(upgrade_proto.cpp.o):upgrade_proto.cpp:(.text+0x251b): more undefined references to google::protobuf::internal::empty_string_' follow ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::NetState::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream) const': caffe.pb.cc:(.text+0x1828): undefined reference to `google::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5OutputParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream*) const': caffe.pb.cc:(.text+0x1b45): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::InfogainLossParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream) const': caffe.pb.cc:(.text+0x220d): undefined reference to google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::HDF5DataParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream) const': caffe.pb.cc:(.text+0x29cd): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::PythonParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream*) const': caffe.pb.cc:(.text+0x2ca5): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x2cbd): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o):caffe.pb.cc:(.text+0x2cd5): more undefined references to google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' follow ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::Datum::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream) const': caffe.pb.cc:(.text+0x406e): undefined reference to `google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::NetStateRule::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream*) const': caffe.pb.cc:(.text+0x4918): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x4948): undefined reference to `google::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V0LayerParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream*) const': caffe.pb.cc:(.text+0x565d): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x5679): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x5807): undefined reference to google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' caffe.pb.cc:(.text+0x5846): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x59c0): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::NetParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream*) const': caffe.pb.cc:(.text+0x6909): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x69ed): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::SolverParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream*) const': caffe.pb.cc:(.text+0x6f71): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x71dd): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x7238): undefined reference to google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' caffe.pb.cc:(.text+0x7370): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x73ed): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x74f0): undefined reference to google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' ../lib/libproto.a(caffe.pb.cc.o):caffe.pb.cc:(.text+0x75d0): more undefined references togoogle::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' follow ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::LayerParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream) const': caffe.pb.cc:(.text+0x7e39): undefined reference to google::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream*)' caffe.pb.cc:(.text+0x7e69): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x81c5): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0x81e1): undefined reference to google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::V1LayerParameter::SerializeWithCachedSizes(google::protobuf::io::CodedOutputStream) const': caffe.pb.cc:(.text+0xaa99): undefined reference to `google::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0xaac9): undefined reference to google::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream*)' caffe.pb.cc:(.text+0xadac): undefined reference togoogle::protobuf::internal::WireFormatLite::WriteString(int, std::string const&, google::protobuf::io::CodedOutputStream)' caffe.pb.cc:(.text+0xb21d): undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5OutputParameter::InternalSerializeWithCachedSizesToArray(bool, unsigned char*) const': caffe.pb.cc:(.text+0xb39c): undefined reference togoogle::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::InfogainLossParameter::InternalSerializeWithCachedSizesToArray(bool, unsigned char) const': caffe.pb.cc:(.text+0xc1cc): undefined reference to google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::HDF5DataParameter::InternalSerializeWithCachedSizesToArray(bool, unsigned char) const': caffe.pb.cc:(.text+0xcaf4): undefined reference to `google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::PythonParameter::InternalSerializeWithCachedSizesToArray(bool, unsigned char*) const': caffe.pb.cc:(.text+0xd2ac): undefined reference togoogle::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char)' caffe.pb.cc:(.text+0xd2c4): undefined reference to `google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char)' ../lib/libproto.a(caffe.pb.cc.o):caffe.pb.cc:(.text+0xd2dc): more undefined references to google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char*)' follow ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::PythonParameter::Clear()': caffe.pb.cc:(.text+0x16c63): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x16c8a): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x16cb1): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::HDF5DataParameter::Clear()': caffe.pb.cc:(.text+0x16f14): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::Datum::Clear()': caffe.pb.cc:(.text+0x16fb3): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o):caffe.pb.cc:(.text+0x170a3): more undefined references togoogle::protobuf::internal::emptystring' follow ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5OutputParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream*)': caffe.pb.cc:(.text+0x1782b): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::InfogainLossParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream*)': caffe.pb.cc:(.text+0x18144): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x18160): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::HDF5DataParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x185c4): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x185e0): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::PythonParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x19a55): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x19a6e): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x19ac4): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x19ad9): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x19b2c): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x19b41): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::ImageDataParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream*)': caffe.pb.cc:(.text+0x19e8c): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x19ea5): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' caffe.pb.cc:(.text+0x19f61): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x19f72): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' caffe.pb.cc:(.text+0x1a1a0): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x1a1b1): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::WindowDataParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x1a48a): undefined reference to `google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x1a57c): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x1a595): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x1a649): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x1a65a): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x1a8b7): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x1a8c8): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::ImageDataParameter::Clear()': caffe.pb.cc:(.text+0x1ad93): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x1adce): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x1adfb): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::WindowDataParameter::Clear()': caffe.pb.cc:(.text+0x1afa3): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x1b01b): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o):caffe.pb.cc:(.text+0x1b043): more undefined references togoogle::protobuf::internal::emptystring' follow ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::NetState::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x1cfdb): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::NetStateRule::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x1d3ce): undefined reference to `google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x1d49e): undefined reference to `google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::Datum::SharedCtor()': caffe.pb.cc:(.text+0x1df1f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::Datum::SharedDtor()': caffe.pb.cc:(.text+0x1df8c): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::FillerParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x1e41d): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::FillerParameter::MergeFrom(caffe::FillerParameter const&)': caffe.pb.cc:(.text+0x2037f): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::NetParameter::SharedCtor()': caffe.pb.cc:(.text+0x2068f): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::NetParameter::SharedDtor()': caffe.pb.cc:(.text+0x206ec): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::SolverParameter::SharedCtor()': caffe.pb.cc:(.text+0x20c0f): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::SolverParameter::SharedDtor()': caffe.pb.cc:(.text+0x20d9e): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::SolverState::SharedCtor()': caffe.pb.cc:(.text+0x2175f): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o):caffe.pb.cc:(.text+0x2182c): more undefined references togoogle::protobuf::internal::emptystring' follow ../lib/libproto.a(caffe.pb.cc.o): In function caffe::ParamSpec::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream*)': caffe.pb.cc:(.text+0x23271): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::ParamSpec::SharedCtor()': caffe.pb.cc:(.text+0x2352f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::ParamSpec::SharedDtor()': caffe.pb.cc:(.text+0x2366c): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::ParamSpec::MergeFrom(caffe::ParamSpec const&)': caffe.pb.cc:(.text+0x23883): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x23897): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::LayerParameter::SharedCtor()': caffe.pb.cc:(.text+0x23b4f): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::LayerParameter::SharedDtor()': caffe.pb.cc:(.text+0x23dae): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::TransformationParameter::SharedCtor()': caffe.pb.cc:(.text+0x24aef): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::TransformationParameter::SharedDtor()': caffe.pb.cc:(.text+0x24b4c): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::DataParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x279bc): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x279d5): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x27a91): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x27aa2): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::DataParameter::SharedCtor()': caffe.pb.cc:(.text+0x27d7f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::DataParameter::SharedDtor()': caffe.pb.cc:(.text+0x27e4e): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::DataParameter::MergeFrom(caffe::DataParameter const&)': caffe.pb.cc:(.text+0x28143): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x28157): undefined reference to `google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x2816b): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x2817f): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5DataParameter::SharedCtor()': caffe.pb.cc:(.text+0x2a01f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5DataParameter::SharedDtor()': caffe.pb.cc:(.text+0x2a0bc): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5DataParameter::MergeFrom(caffe::HDF5DataParameter const&)': caffe.pb.cc:(.text+0x2a2b3): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x2a2c7): undefined reference to `google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5OutputParameter::SharedCtor()': caffe.pb.cc:(.text+0x2a57f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5OutputParameter::SharedDtor()': caffe.pb.cc:(.text+0x2a61c): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::HDF5OutputParameter::MergeFrom(caffe::HDF5OutputParameter const&)': caffe.pb.cc:(.text+0x2a7f7): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x2a80b): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::ImageDataParameter::SharedCtor()': caffe.pb.cc:(.text+0x2b10f): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::ImageDataParameter::SharedDtor()': caffe.pb.cc:(.text+0x2b1de): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::ImageDataParameter::MergeFrom(caffe::ImageDataParameter const&)': caffe.pb.cc:(.text+0x2b563): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x2b57a): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x2b5b3): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x2b5ca): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x2b5e3): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x2b5f7): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::InfogainLossParameter::SharedCtor()': caffe.pb.cc:(.text+0x2b90f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::InfogainLossParameter::SharedDtor()': caffe.pb.cc:(.text+0x2b9ac): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::InfogainLossParameter::MergeFrom(caffe::InfogainLossParameter const&)': caffe.pb.cc:(.text+0x2bb93): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x2bba7): undefined reference to `google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::PythonParameter::SharedCtor()': caffe.pb.cc:(.text+0x2f61f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::PythonParameter::SharedDtor()': caffe.pb.cc:(.text+0x2f6be): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::PythonParameter::MergeFrom(caffe::PythonParameter const&)': caffe.pb.cc:(.text+0x2f993): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x2f9a7): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x2f9b5): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x2f9c9): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x2f9d7): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x2f9eb): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::WindowDataParameter::SharedCtor()': caffe.pb.cc:(.text+0x337af): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::WindowDataParameter::SharedDtor()': caffe.pb.cc:(.text+0x3389e): undefined reference to google::protobuf::internal::empty_string_' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::WindowDataParameter::MergeFrom(caffe::WindowDataParameter const&)': caffe.pb.cc:(.text+0x33cb3): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x33cca): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x33d1a): undefined reference to `google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x33d33): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x33d47): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x33d5b): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x33d6f): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V1LayerParameter::SharedCtor()': caffe.pb.cc:(.text+0x34a6f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V1LayerParameter::SharedDtor()': caffe.pb.cc:(.text+0x34c1c): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V0LayerParameter::SharedCtor()': caffe.pb.cc:(.text+0x3571f): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V0LayerParameter::SharedDtor()': caffe.pb.cc:(.text+0x3587e): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::protobuf_AddDesc_caffe_2eproto()': caffe.pb.cc:(.text+0x3966b): undefined reference togoogle::protobuf::MessageFactory::InternalRegisterGeneratedFile(char const, void ()(std::string const&))' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::protobuf_AssignDesc_caffe_2eproto()': caffe.pb.cc:(.text+0x3a770): undefined reference togoogle::protobuf::DescriptorPool::FindFileByName(std::string const&) const' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::Datum::MergeFrom(caffe::Datum const&)': caffe.pb.cc:(.text+0x3f6b3): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x3f6c7): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::TransformationParameter::MergeFrom(caffe::TransformationParameter const&)': caffe.pb.cc:(.text+0x3f9ab): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x3f9bf): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::Datum::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x401b1): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x401c2): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::TransformationParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream*)': caffe.pb.cc:(.text+0x40799): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x407aa): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::SolverState::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x42453): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x42464): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::V0LayerParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x42beb): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x42c09): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x42cf9): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x42d13): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x430ac): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x430c6): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x43132): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' caffe.pb.cc:(.text+0x4328a): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x432a8): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::LayerParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x49413): undefined reference to `google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x494f3): undefined reference to `google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x49555): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x4956f): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x495ac): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x495c6): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::V1LayerParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x4af64): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x4af7d): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4b978): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' caffe.pb.cc:(.text+0x4bc53): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4c063): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::NetParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x4ded5): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x4deee): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4e124): undefined reference to `google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' ../lib/libproto.a(caffe.pb.cc.o): In function `caffe::SolverParameter::MergePartialFromCodedStream(google::protobuf::io::CodedInputStream)': caffe.pb.cc:(.text+0x4e810): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' caffe.pb.cc:(.text+0x4ec1e): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4eebc): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x4eed5): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4f1fe): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x4f20f): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4f4d6): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x4f4e7): undefined reference togoogle::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream, std::string)' caffe.pb.cc:(.text+0x4f734): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' caffe.pb.cc:(.text+0x4f79c): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x4f7b5): undefined reference to google::protobuf::internal::WireFormatLite::ReadBytes(google::protobuf::io::CodedInputStream*, std::string*)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::SolverState::MergeFrom(caffe::SolverState const&)': caffe.pb.cc:(.text+0x507ca): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x507e1): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V0LayerParameter::MergeFrom(caffe::V0LayerParameter const&)': caffe.pb.cc:(.text+0x51053): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x5106a): undefined reference to `google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x51083): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x51097): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x510a9): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x510bd): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x51110): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x51123): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x5113a): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::LayerParameter::MergeFrom(caffe::LayerParameter const&)': caffe.pb.cc:(.text+0x5325b): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x5326f): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x53281): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x53295): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::V1LayerParameter::MergeFrom(caffe::V1LayerParameter const&)': caffe.pb.cc:(.text+0x554d3): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x554e7): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In functioncaffe::NetParameter::MergeFrom(caffe::NetParameter const&)': caffe.pb.cc:(.text+0x5694b): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x5695f): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o): In function caffe::SolverParameter::MergeFrom(caffe::SolverParameter const&)': caffe.pb.cc:(.text+0x571f2): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x57244): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x57261): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x57613): undefined reference to google::protobuf::internal::empty_string_' caffe.pb.cc:(.text+0x57627): undefined reference togoogle::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x57670): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x57683): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x576a0): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' caffe.pb.cc:(.text+0x576b3): undefined reference togoogle::protobuf::internal::emptystring' caffe.pb.cc:(.text+0x576c7): undefined reference to google::protobuf::internal::ArenaStringPtr::AssignWithDefault(std::string const*, google::protobuf::internal::ArenaStringPtr)' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe9BlobShapeE[_ZTVN5caffe9BlobShapeE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe9BlobShapeE[_ZTVN5caffe9BlobShapeE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe9BlobProtoE[_ZTVN5caffe9BlobProtoE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe9BlobProtoE[_ZTVN5caffe9BlobProtoE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15BlobProtoVectorE[_ZTVN5caffe15BlobProtoVectorE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15BlobProtoVectorE[_ZTVN5caffe15BlobProtoVectorE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe5DatumE[_ZTVN5caffe5DatumE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe5DatumE[_ZTVN5caffe5DatumE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15FillerParameterE[_ZTVN5caffe15FillerParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15FillerParameterE[_ZTVN5caffe15FillerParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12NetParameterE[_ZTVN5caffe12NetParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12NetParameterE[_ZTVN5caffe12NetParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15SolverParameterE[_ZTVN5caffe15SolverParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15SolverParameterE[_ZTVN5caffe15SolverParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe11SolverStateE[_ZTVN5caffe11SolverStateE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe11SolverStateE[_ZTVN5caffe11SolverStateE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe8NetStateE[_ZTVN5caffe8NetStateE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe8NetStateE[_ZTVN5caffe8NetStateE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12NetStateRuleE[_ZTVN5caffe12NetStateRuleE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12NetStateRuleE[_ZTVN5caffe12NetStateRuleE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe9ParamSpecE[_ZTVN5caffe9ParamSpecE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe9ParamSpecE[_ZTVN5caffe9ParamSpecE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14LayerParameterE[_ZTVN5caffe14LayerParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14LayerParameterE[_ZTVN5caffe14LayerParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe23TransformationParameterE[_ZTVN5caffe23TransformationParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe23TransformationParameterE[_ZTVN5caffe23TransformationParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13LossParameterE[_ZTVN5caffe13LossParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13LossParameterE[_ZTVN5caffe13LossParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe17AccuracyParameterE[_ZTVN5caffe17AccuracyParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe17AccuracyParameterE[_ZTVN5caffe17AccuracyParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15ArgMaxParameterE[_ZTVN5caffe15ArgMaxParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15ArgMaxParameterE[_ZTVN5caffe15ArgMaxParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15ConcatParameterE[_ZTVN5caffe15ConcatParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15ConcatParameterE[_ZTVN5caffe15ConcatParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18BatchNormParameterE[_ZTVN5caffe18BatchNormParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18BatchNormParameterE[_ZTVN5caffe18BatchNormParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13BiasParameterE[_ZTVN5caffe13BiasParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13BiasParameterE[_ZTVN5caffe13BiasParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe24ContrastiveLossParameterE[_ZTVN5caffe24ContrastiveLossParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe24ContrastiveLossParameterE[_ZTVN5caffe24ContrastiveLossParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe20ConvolutionParameterE[_ZTVN5caffe20ConvolutionParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe20ConvolutionParameterE[_ZTVN5caffe20ConvolutionParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13CropParameterE[_ZTVN5caffe13CropParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13CropParameterE[_ZTVN5caffe13CropParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13DataParameterE[_ZTVN5caffe13DataParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13DataParameterE[_ZTVN5caffe13DataParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16DropoutParameterE[_ZTVN5caffe16DropoutParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16DropoutParameterE[_ZTVN5caffe16DropoutParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18DummyDataParameterE[_ZTVN5caffe18DummyDataParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18DummyDataParameterE[_ZTVN5caffe18DummyDataParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16EltwiseParameterE[_ZTVN5caffe16EltwiseParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16EltwiseParameterE[_ZTVN5caffe16EltwiseParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12ELUParameterE[_ZTVN5caffe12ELUParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12ELUParameterE[_ZTVN5caffe12ELUParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14EmbedParameterE[_ZTVN5caffe14EmbedParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14EmbedParameterE[_ZTVN5caffe14EmbedParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12ExpParameterE[_ZTVN5caffe12ExpParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12ExpParameterE[_ZTVN5caffe12ExpParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16FlattenParameterE[_ZTVN5caffe16FlattenParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16FlattenParameterE[_ZTVN5caffe16FlattenParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe17HDF5DataParameterE[_ZTVN5caffe17HDF5DataParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe17HDF5DataParameterE[_ZTVN5caffe17HDF5DataParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe19HDF5OutputParameterE[_ZTVN5caffe19HDF5OutputParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe19HDF5OutputParameterE[_ZTVN5caffe19HDF5OutputParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18HingeLossParameterE[_ZTVN5caffe18HingeLossParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18HingeLossParameterE[_ZTVN5caffe18HingeLossParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ImageDataParameterE[_ZTVN5caffe18ImageDataParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ImageDataParameterE[_ZTVN5caffe18ImageDataParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe21InfogainLossParameterE[_ZTVN5caffe21InfogainLossParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe21InfogainLossParameterE[_ZTVN5caffe21InfogainLossParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe21InnerProductParameterE[_ZTVN5caffe21InnerProductParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe21InnerProductParameterE[_ZTVN5caffe21InnerProductParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14InputParameterE[_ZTVN5caffe14InputParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14InputParameterE[_ZTVN5caffe14InputParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12LogParameterE[_ZTVN5caffe12LogParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12LogParameterE[_ZTVN5caffe12LogParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12LRNParameterE[_ZTVN5caffe12LRNParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12LRNParameterE[_ZTVN5caffe12LRNParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe19MemoryDataParameterE[_ZTVN5caffe19MemoryDataParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe19MemoryDataParameterE[_ZTVN5caffe19MemoryDataParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12MVNParameterE[_ZTVN5caffe12MVNParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12MVNParameterE[_ZTVN5caffe12MVNParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ParameterParameterE[_ZTVN5caffe18ParameterParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ParameterParameterE[_ZTVN5caffe18ParameterParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16PoolingParameterE[_ZTVN5caffe16PoolingParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16PoolingParameterE[_ZTVN5caffe16PoolingParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14PowerParameterE[_ZTVN5caffe14PowerParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14PowerParameterE[_ZTVN5caffe14PowerParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15PythonParameterE[_ZTVN5caffe15PythonParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe15PythonParameterE[_ZTVN5caffe15PythonParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18RecurrentParameterE[_ZTVN5caffe18RecurrentParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18RecurrentParameterE[_ZTVN5caffe18RecurrentParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ReductionParameterE[_ZTVN5caffe18ReductionParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ReductionParameterE[_ZTVN5caffe18ReductionParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13ReLUParameterE[_ZTVN5caffe13ReLUParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13ReLUParameterE[_ZTVN5caffe13ReLUParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16ReshapeParameterE[_ZTVN5caffe16ReshapeParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16ReshapeParameterE[_ZTVN5caffe16ReshapeParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14ScaleParameterE[_ZTVN5caffe14ScaleParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14ScaleParameterE[_ZTVN5caffe14ScaleParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16SigmoidParameterE[_ZTVN5caffe16SigmoidParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16SigmoidParameterE[_ZTVN5caffe16SigmoidParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14SliceParameterE[_ZTVN5caffe14SliceParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14SliceParameterE[_ZTVN5caffe14SliceParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16SoftmaxParameterE[_ZTVN5caffe16SoftmaxParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16SoftmaxParameterE[_ZTVN5caffe16SoftmaxParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13TanHParameterE[_ZTVN5caffe13TanHParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13TanHParameterE[_ZTVN5caffe13TanHParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13TileParameterE[_ZTVN5caffe13TileParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe13TileParameterE[_ZTVN5caffe13TileParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ThresholdParameterE[_ZTVN5caffe18ThresholdParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe18ThresholdParameterE[_ZTVN5caffe18ThresholdParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe19WindowDataParameterE[_ZTVN5caffe19WindowDataParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe19WindowDataParameterE[_ZTVN5caffe19WindowDataParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12SPPParameterE[_ZTVN5caffe12SPPParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe12SPPParameterE[_ZTVN5caffe12SPPParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16V1LayerParameterE[_ZTVN5caffe16V1LayerParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16V1LayerParameterE[_ZTVN5caffe16V1LayerParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16V0LayerParameterE[_ZTVN5caffe16V0LayerParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe16V0LayerParameterE[_ZTVN5caffe16V0LayerParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14PReLUParameterE[_ZTVN5caffe14PReLUParameterE]+0x20): undefined reference togoogle::protobuf::Message::GetTypeName() const' ../lib/libproto.a(caffe.pb.cc.o):(.data.rel.ro._ZTVN5caffe14PReLUParameterE[_ZTVN5caffe14PReLUParameterE]+0x58): undefined reference to google::protobuf::Message::InitializationErrorString() const' ../lib/libcaffe.a(lstm_layer.cpp.o): In functioncaffe::ParamSpec::set_name(char const)': lstm_layer.cpp:(.text._ZN5caffe9ParamSpec8set_nameEPKc[_ZN5caffe9ParamSpec8set_nameEPKc]+0x22): undefined reference to google::protobuf::internal::empty_string_' ../lib/libcaffe.a(lstm_layer.cpp.o): In functioncaffe::LayerParameter::set_name(char const)': lstm_layer.cpp:(.text._ZN5caffe14LayerParameter8set_nameEPKc[_ZN5caffe14LayerParameter8set_nameEPKc]+0x22): undefined reference to google::protobuf::internal::empty_string_' ../lib/libcaffe.a(lstm_layer.cpp.o): In functioncaffe::LayerParameter::set_type(char const)': lstm_layer.cpp:(.text._ZN5caffe14LayerParameter8set_typeEPKc[_ZN5caffe14LayerParameter8set_typeEPKc]+0x22): undefined reference to google::protobuf::internal::empty_string_' ../lib/libcaffe.a(lstm_layer.cpp.o): In functioncaffe::LSTMLayer::FillUnrolledNet(caffe::NetParameter) const': lstm_layer.cpp:(.text._ZNK5caffe9LSTMLayerIfE15FillUnrolledNetEPNS_12NetParameterE[_ZNK5caffe9LSTMLayerIfE15FillUnrolledNetEPNS_12NetParameterE]+0x6bd): undefined reference to google::protobuf::internal::empty_string_' lstm_layer.cpp:(.text._ZNK5caffe9LSTMLayerIfE15FillUnrolledNetEPNS_12NetParameterE[_ZNK5caffe9LSTMLayerIfE15FillUnrolledNetEPNS_12NetParameterE]+0x7cf): undefined reference togoogle::protobuf::internal::emptystring' ../lib/libcaffe.a(lstm_layer.cpp.o):lstm_layer.cpp:(.text._ZNK5caffe9LSTMLayerIfE15FillUnrolledNetEPNS_12NetParameterE[_ZNK5caffe9LSTMLayerIfE15FillUnrolledNetEPNS_12NetParameterE]+0xae8): more undefined references to `google::protobuf::internal::emptystring' follow collect2: error: ld returned 1 exit status tools/CMakeFiles/extract_features.dir/build.make:120: recipe for target 'tools/extract_features' failed make[2]: [tools/extract_features] Error 1 CMakeFiles/Makefile2:435: recipe for target 'tools/CMakeFiles/extract_features.dir/all' failed make[1]: [tools/CMakeFiles/extract_features.dir/all] Error 2 Makefile:129: recipe for target 'all' failed make: *** [all] Error 2