编译caffe的一个protobuf问题

##编译caffe遇到的一个奇葩问题
一直都显示protobuf的问题,如下图所示:
这里写图片描述
undefined reference to ‘google::protobuf::MessageLite::SerializeToString’
对于我这种老司机来说,编译安装caffe已经无数次了,看到这个的第一反应就是libprotobuf-dev这个没有安装,于是

sudo apt-get install libprotobuf-dev

但是系统提示我已经安装了。于是我想到会不会是没安装好,于是

sudo apt-get remove libprotobuf-dev

但是问题依然存在。然后我想到我之前切换过gcc的版本,会不会这个有问题,然后

sudo update-alternatives --config gcc

切换到gcc5.6版本
但是问题依然存在啊,我的天,瞬间我有种不祥的预感。于是把错误在google上一贴,确实有人说编译器的版本问题,也有人说libprotobuf-dev这个东西不好,需要自己编译protobuf源码。

所以我又尝试去下载protobuf源码编译
1、https://github.com/google/protobuf
2、./configure
3、make
4、make check
5、sudo make install
6、sudo ld config

然后我又重新make clean,再次的make
但是依然还是同样的错误啊。
简直泪崩。
最后我想手动地把所有关于protobuf的东西全部删除。
/usr/local
/usr/local/lib等等这里面的protobuf的相关东西全部删除。然后再重新编译protobuf。但是依然还是错误。

然后我检查Makefile的里面的protobuf的包含路径,也都是确实没有问题。

然后我一怒之下把python环境配置为系统自带的python环境,马丹,,,居然错误就没有了。瞬间就定位到错误原来是anaconda。因为我的anaconda里面安装了tensorflow的环境,所以一直没动它,tensorflow里面也是需要protobuf的,里面安装的protobuf版本和系统安装的版本有了冲突所以就一直出错。
。。。。。
最后就是这个问题了。


关注我的公众号,分享资源
公众号搜索: 卡本特
扫码关注

  • 10
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 17
    评论
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值