linux下caffe编译出错

错误1: libcudart.so.8.0: cannot open shared object file: No such file or directory
解决办法:首先确认/etc/profile中的路径包含了cuda8.0的安装路径及相应的库文件

export PATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda-8.0/lib64
$source /etc/profile

使配置文件生效,再次执行。
若仍提示相同的错误,则执行以下命令,将相应的库文件复制到/usr/lib

sudo cp /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/local/lib/libcudart.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcublas.so.8.0 /usr/local/lib/libcublas.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcurand.so.8.0 /usr/local/lib/libcurand.so.8.0 && sudo ldconfig

sudo ldconfig命令是一个动态链接库管理命令,是为了让动态链接库为系统共享。
至此,问题就解决啦,哈哈哈(*_^)

错误2: .build_release/tools/caffe: error while loading shared libraries: libcudnn.so.5: cannot open shared object file: No such file or directory
解决:设置cudnn环境变量

$ sudo vi /etc/ld.so.conf.d/cuda.conf    //创建文件
写入/usr/local/cuda/lib64
$ sudo ldconfig    //使软链接生效

错误3: pip升级到10版本后ImportError: cannot import name ‘main’
解决:找到报错文件,也就是那个pip,然后cd进目录 vi 编辑pip,将里面的内容改为如下所示:

# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main as _main
if __name__ == '__main__':
  sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
  sys.exit(_main())

错误4: pandas 0.23.0 has requirement python-dateutil>=2.5.0, but you’ll have python-dateutil 1.5 which is incompatible.
matplotlib 2.2.2 has requirement python-dateutil>=2.1, but you’ll have python-dateutil 1.5 which is incompatible.明明已经升级到2.7.3,还是报错。caffe/python下的requirement.txt要求小于2版本。晕!
在python命令行里import matplotlib却没有问题。搞不懂啦~

下次还是装anaconda吧,python环境和jupter notebook都有了。注意:千万不要装重了,不然很头疼的。

猜你喜欢

转载自blog.csdn.net/Carina_Cao/article/details/80526077
今日推荐