gcc 5以上版本caffe编译出现protobuf undefined问题

一 问题描述:

如果在gcc大于5.0的版本编译caffe的时候,出现Undefined reference to google::protobuf…等问题,这时候问题并非来自protobuf的路径或者引用错误,这时候需要考虑ABI问题,特别是在gcc大于5.0的环境下编译的protobuf

二 解决方案:

需要重新编译protobuf,解决的办法是使用CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0"选项去构建。

./configure CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0"

caffe编译过程中可能遇到较多的出现[abi:cxx11]的问题,只需要在caffe的Makefile中添加

COMMON_FLAGS+=-D_GLIBCXX_USE_CXX11_ABI=0

执行完以上步骤后,再执行make估计就解决了

你可能感兴趣的:(心路历程)