protobuf版本冲突问题解决

1、proto/caffe.pb.h:17:2: error: #error This file was generated by an older version of protoc

如果你装有anaconda,以及tensorflow,或者在编译protobuf时候很容易出现这些问题,最有可能的原因是你的系统里有多个protoc。之前的解决方法

1、
在.bashrc中注释anaconda路径
2、
source .bashrc
sudo ldconfig
3、
新开一个终端
which protoc
打印输出当前protoc路径
此时可能为 /usr/bin/protoc  /usr/local/bin/protoc  .....
4、
删除该protoc

此时再次编译,看是否通过。如果还不行,向下看终极版

2、ubuntu16.04下编译caffe出现.build_release/lib/libcaffe.so: undefined reference to google ::protobuf…的问题

此时你的protobuf库与链接库已经混乱了,终极解决方法:

终极版

既还原protobuf库到最初状态

sudo apt-get remove libprotobuf-dev
sudo apt-get remove protobuf-compiler
sudo apt-get remove python-protobuf
sudo rm -rf /usr/local/bin/protoc
sudo rm -rf /usr/bin/protoc
sudo rm -rf /usr/local/include/google
sudo rm -rf /usr/local/include/protobuf*
sudo rm -rf /usr/include/google
sudo rm -rf /usr/include/protobuf*

以下两行慎用!
sudo rm -rf /usr/local/lib/libproto*
sudo rm -rf /usr/lib/libproto*

之后重开终端再重装

sudo apt-get update
sudo ldconfig
sudo apt-get install libprotobuf* protobuf-compiler python-protobuf
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值