ubuntu 16.04 安装配置caffe过程中遇到的坑

本文解决Caffe编译与运行中常见的技术问题,包括HDF5头文件缺失、Boost Python库链接错误、Skimage导入异常、Protobuf版本冲突、cuDNN警告与CUDA运行时库加载失败等,提供了详细的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、hdf5 问题     

     修改Makefile.config文件(INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/)之后编译caffe,还是出现fatal error hdf5.h no such file or directory的问题,直接用命令安装即可。

sudo apt-get install libhdf5-serial-dev

二、cannot find -lboost_python3

       首先去/usr/lib/x86_64-linux-gnu目录下查看是否有python3版本的libboost,没有libboost_python3.so,所以需要手动建立连接。 

sudo ln -s libboost_python-py35.so libboost_python3.so

三、cannot import name '_validate_lengths'

       这是skimage的问题,重新安装skimage即可。

sudo pip install scikit-image 

二、protobuf版本问题

        原本是protobuf-2.6.1,之后安装了protoc 3.0.0之后出现.build_release/src/caffe/proto/caffe.pb.h:22:35: fatal error: google/protobuf/arena.h类似的错误,可能是两个版本的protoc发生了冲突。

        为了解决冲突,将protobuf还原为之前的2.6.1版本:

        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/local/lib/libproto*
        sudo rm -rf /usr/lib/libproto*
        sudo rm -rf /usr/include/google
        sudo rm -rf /usr/include/protobuf*

        然后,再重新安装protobuf:

        sudo apt-get update

        sudo ldconfig

        sudo apt-get install libprotobuf* protobuf-compiler python-protobuf

三、cudnn的问题

./include/caffe/util/cudnn.hpp: In function ‘const char* cudnnGetErrorString(cudnnStatus_t)’:
./include/caffe/util/cudnn.hpp:21:10: warning: enumeration value 

把caffe里面的所有与cudnn相关的.hpp 替换成第一次配置caffe时候  所用的cudnn的版本

四、.build_release/tools/caffe: error while loading shared libraries: libcudart.so.10.0: cannot open shared object file: No such file or directory
Makefile:542: recipe for target 'runtest' failed
make: *** [runtest] Error 127

执行如下命令:

sudo cp /usr/local/cuda-10.0/lib64/libcudart.so.10.0 /usr/local/lib/libcudart.so.10.0 && sudo ldconfig

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值