On Sat, Oct 03, 2015 at 03:28:31AM +0000, lumin wrote: > The exact reason of FTBFS is things like e.g.: > > ``` > /usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()' > CMakeFiles/caffe.bin.dir/caffe.cpp.o: In function `std::string* google::MakeCheckOpString<float, int>(float const&, int const&, char const*)': > /usr/include/glog/logging.h:672: undefined reference to `google::base::CheckOpMessageBuilder::NewString()' > ../lib/libcaffe.so.0: undefined reference to `google::protobuf::Message::InitializationErrorString() const' > ../lib/libcaffe.so.0: undefined reference to `google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(int, std::string const&, google::protobuf::io::CodedOutputStream*)' > ../lib/libcaffe.so.0: undefined reference to `google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(std::string const&, unsigned char*)' Your first (and only?) things to make sure in such cases should be that you have the corresponding library (-lprotobuf) on the link line and that it has the listed symbols. libprotobuf9v5 from sid doesn't have them. > 1. I'm doing linking with gcc/g++ 4.9 on libXXXv5 libraries. This just won't work. > However when my caffe-cuda build succeed on testing machine (gcc-4.9 + CUDA 6.5), > gcc is linking ELFs against libXXX rather than libXXXv5. Where does /usr/lib/x86_64-linux-gnu/libprotobuf.so point there? -- WBR, wRAR
Attachment:
signature.asc
Description: PGP signature