赞
踩
如果你装有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
此时再次编译,看是否通过。如果还不行,向下看终极版
此时你的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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。