再装caffe(cpu)

本文详细记录了在Ubuntu系统中配置Caffe(CPU版)的过程,包括遇到的错误、解决办法及关键步骤。从conda环境的管理、Makefile.config的修改到Boost、Protobuf等依赖库的处理,最终成功编译并解决了运行时的库找不到问题。
摘要由CSDN通过智能技术生成

最新配置成功方案:https://blog.csdn.net/m0_38116269/article/details/88919184
不要跟anaconda的库混用!不然很麻烦,需要令人头疼的问题都是因为anaconda和系统目录里面的某些文件冲突了,把编译器给搞糊涂才报错的。
只为用作c++使用。
由于安装了anaconda,一定要先conda deactivate来禁用conda环境,不然默认给我在anaconda和系统根目录搜索了,容易犯冲。
编译错误时,一定要先make clean

https://github.com/BVLC/caffe/issues/6358

有个错误借鉴了一下,修改了caffe的源码。
https://blog.csdn.net/dyx810601/article/details/78054856

缺少一个东西,需要在Makefile.config文件当中加入一句话。
https://blog.csdn.net/w5688414/article/details/79482482

不行了,实在是配置不起来了,只能升级系统版本了,听说新的系统集成了caffe包挺好的。。
系统升级到18了,感觉不错。

关于有个cublas_v2.h文件找不到的问题,有各种讨论。
https://github.com/BVLC/caffe/issues/2704

imread没有定义的错误:
https://blog.csdn.net/u011636440/article/details/82660697

找到了个不太一样的解释:
https://blog.csdn.net/chenjiyou363753068/article/details/85088907

anaconda 中安装的protobuf反冲突,我先卸载掉:
conda uninstall protobuf
conda uninstall libprotobuf
看看到底行不行

boost 找不到:

https://blog.csdn.net/qq_31261509/article/details/79412700
先参考这个,在CMakeLists.txt中加进去。

共享指针无法识别的问题:
https://blog.csdn.net/zhuiyunzhugang/article/details/86564814
加上boost::即可。

对动态链接库出错的常用原因总结:
https://blog.csdn.net/cserchen/article/details/5503556

老是给我报错libcurl有问题,我把conda里面的删除了,记录一下,这样不行,用的时候再下载吧。
http://www.zhimengzhe.com/linux/329844.html 这个明确提出了,是软连接冲突的原因。学习一下。
看到了一个一个博客:https://blog.csdn.net/linwantian/article/details/79796535 这个说的是caffe,cmake搞不好的原因,因为没有用cmake编译caffe源码,所以无法成功。这个我保持怀疑态度,毕竟自己曾经在别的环境中成果过。但是也是值得借鉴的。

目前水平有限,电脑太娇弱,只能成功配置好caffe,测试过在其目录下编译c++工程是可以成功的,但是一换到自己的工程目录下就无法正确引用caffe了,这是因为自己水平有限,实力不足。临渊羡鱼,不如退而结网。好好学习相关的技术知识,咱们来日再战。

借鉴了一下这个讨论:https://github.com/BVLC/caffe/issues/2852
挺好,目前是,make成功了,但是还有三个警告,不知道运行能否成功。

卧槽,最后竟然成功了!!!
https://stackoverflow.com/questions/4581305/error-while-loading-shared-libraries-libboost-system-so-1-45-0-cannot-open-sha
最后有个错误是,libboost_filesystem.so.1.67.0类似一个这样的找不到,于是,我就借鉴了他的回答,加入动态链接库。
LD_LIBRARY_PATH="/home/wwh/anaconda3/lib" ./../bin/classify竟然成了哈哈哈

相关解释:
The library cannot be found.

Libraries are by default looked for in /lib, /usr/lib and the directories specified by /etc/ld.so.conf.

Usually system libraries (like boost, if you installed it via your package manager) are located in /usr/lib, but it’s probably not your case.

Where are your boost libraries located on your system? Did you compile them by yourself? In this case you should tell the dynamic linker to look for your libraries in the directory they’re located by using the LD_LIBRARY_PATH environment variable:
库函数找不到的错误这是个,库默认安装在/lib, /usr/lib 还有、etc/ld.so.conf.
通常像boost库位于系统默认的位置,一个有可能是我借用了anaconda的库函数,这个没有在默认的位置,另一个可能是我boost安装的不对头?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值