ubuntu 14.04+ GTX 1070+cuda 8.0 + cudnn 5.1+opencv3.0+caffe配置一步到位

ubuntu 14.04+ GTX 1070+cuda 8.0 + cudnn 5.1+opencv3.0的安装参见我前两篇博客,详细介绍了!

本文重点为caffe的安装与配置细节

1、安装caffe前,安装依赖项和各种库

 

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler libatlas-base-dev libgflags-dev libgoogle-glog-dev  liblmdb-dev libboost-all-dev


2、安装caffe需要的python包

 

网上介绍用现有的anaconda,我反正不建议,因为路径设置麻烦,很容易出错,而且自己安装很简单也挺快的。

首先需要安装pip

 

sudo apt-get install python-pip

再下载caffe,我把caffe放在用户目录下

 

sudo apt-get install git
git --version

git clone https://github.com/BVLC/caffe.git

再转到caffe的python目录,安装scipy

cd caffe/python

sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

最后安装requirement里面的包,需要root权限

 

 

sudo su

for req in $(cat requirements.txt)

do pip install $req

done //回车键

 

 

 

 

如果提示报错,一般是缺少必须的包引起的,直接根据提示pip install  <package-name>就行了

安装完后退出root权限

 

exit

 

 

3、编译caffe

 

 

 
cd ~/caffe cp Makefile.config.example Makefile.config gedit Makefile.config

这里仅需要修改两处:

 

 

# USE_CUDNN := 1 //取消注释
 
# OPENCV_VERSION := 3//取消注释

 

 

 

 

make all -j8
make test
make runtest
make pycaffe

在make all -j8 时,

出现错误/usr/bin/ld: 找不到 -lhdf5_hl         /usr/bin/ld: 找不到 -lhdf5

然后sudo apt-get install libhdf5-dev       sudo apt-get install libhdf5-serial-dev都显示已经最高版本。但在计算机里搜索不到libhdf5.so以及libhdf5_hl.so,然后去官网https://launchpad.net/ubuntu/+source/hdf5/下载libhdf5-dev   libhdf5-serial-dev,然后在/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so里面找到,所以,执行以下:

sudo cp /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so /usr/lib/

sudo cp /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_hl.so /usr/lib/

make clean

make all -j8

 

出现错误/usr/bin/ld:cannot find -lopencv_imgcodecs  

参见http://blogs.csdn.net/jideljd_2010/article/details/38046901这位大神的博文得到灵感
解决方法:在计算机里搜索libopencv_imgcodecs 的文件,发现有4个相关文件在/home/shan/opencv-3.0.0/build/lib/里,复制移动

 

sudo cp /home/shan/opencv-3.0.0/build/lib/libopencv_imgcodecs.so /usr/lib/
sudo cp /home/shan/opencv-3.0.0/build/lib/libopencv_imgcodecs.so.3.0 /usr/lib/
sudo cp /home/shan/opencv-3.0.0/build/lib/libopencv_imgcodecs.so3.0.0 /usr/lib/
sudo cp /home/shan/opencv-3.0.0/build/lib/libopencv_imgcodecs_pch_dephelp.a /usr/lib/

在解决的过程中结合了http://blog.csdn.net/w113691/article/details/77942408这位大神的博文

 

先将Makefile.config文件中

OPENCV_VERSION :=3 注释掉,只修改USE_OPENCV := 1

修改后的结果:

USE_OPENCV := 1

#OPENCV_VERSION := 3

 

在caffe根目录下,找到Makefile文件,打开文件

 

查找“Derive include and lib directories”一节,修改“LIBRARIES +=”的最后一行(LIBRARIES +=opencv_imgcodecs ),增加opencv_imgcodecs

opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs

(此时应该变为LIBRARIES += opencv_imgcodecs  opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs)

保存,退出。

 

 

 

成功解决!

 

 

make test 没问题
在make runtest时,出现错误
问题描述: error while loading shared libraries: libcudart.so.8.0: cannot open shared object file: No such file or directory
解决办法:首先确认/etc/profile中的路径包含了cuda8.0的安装路径及相应的库文件

 

 

 

sudo gedit /etc/profile
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

成功解决!

 

运行make pycaffe
在成功编译caffe的源码之后,可以在python环境中使用caffe。
在Ubuntu环境下,打开python解释程序,输入import caffe时:出现以下错误

 

>>>import caffe  
Traceback (most recent call last):  
File "<stdin>", line 1, in <module>  
ImportError: No module named caffe  

解决办法:

 

 

 

 

sudo gedit ~/.bashrc 

 

写入

 

 
export PYTHONPATH=~/caffe/python:$PYTHONPATH 
source ~/.bashrc

生效后在新终端重新输入import caffe时:无任何输出,证明无错误

 

 

 

至此,全部安装完成!!!!


测试:
 

caffe测试,执行以下命令: 

cd ~/caffe 
sudo sh data/mnist/get_mnist.sh 
sudo sh examples/mnist/create_mnist.sh 

最后测试:

sudo sh examples/mnist/train_lenet.sh

运行成功!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值