您的位置:首页 > Web前端

心酸的Caffe安装之路 环境搭配 Ubuntu16.04+gtx1080+cuda8.0+cudnn5.1+opencv+Anaconda3+caffe

2017-09-26 20:24 776 查看
首先安装Ubuntu16.04,系统可以在官网上下载,因为我是安装的双系统,所以出现了很多问题,不过这里最重要的问题就是引导的问题,在我的上一篇博客中已经写了。不请欻的话可以在下面留言。

安装好系统以后,就需要把我们需要的软件包都下载下来,我是在windows上提前下载好然后进入Ubuntu系统的,所有的东西在下图。



软件包依次是Anaconda3(4.2.0) python3版本的, caffe源码,  Nvidia显卡驱动  ,cudnn, opencv3.1,cuda8.

在下好这些东西就可以开始配置环境了。

一、安装我们的显卡驱动,在这里要十分注意,不能直接在桌面环境安装我们的显卡驱动,否则会报错。

解决办法:

1、进入tty模式,按下CTRL+ALT+F1进入

2、关闭桌面  sudo lightdm stop

3、进入显卡驱动所在的目录 执行sudo ./xxxxxx.run  xxx为你显卡驱动包的名字

在安装的时候,会刷出协议,直接按ctrl+c跳过,然后一直跟觉提示安装即可。

安装完成以后,不要忘记启动桌面

4、sudo lightdm restart

5、reboot

按道理来说,重启之后输出nivida -smi可以看见显卡驱动信息就表示安装成功了。但是我这里因为是技嘉的主板,不知道为什么不能关系sercuriy boot貌似是没有这个选项,所以这个命令识别不了,不过可以通过其他方法查看,比如查看系统的详细信息,能显示显卡就可以。

二、安装CUDA,命令跟上面一样,直接进入目录然后sudo ./xxxxxxxxxx

唯一要注意的就是在跳过阅读协议后,第一个对话会提示你要不要安装低版本的驱动,千万要点No,后面一直yes就够了。

安装完成以后要配置一下环境变量

输入sudo vim ~/.bashrc

在最后加入

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}} 

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} 

然后退出保存,如果vim命令不熟悉的可以百度一下。

最后生效一下环境变量

sources ~/.bashrc

这时候打开我们的cuda的安装路径,测试一下安装是否成功

cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery 

make

sudo ./deviceQuery

如果出现下面的信息,则成功了。



三、cudnn安装

将cudnn的包解压,然后进入include目录,执行下面命令

sudo cp cudnn.h /usr/local/cuda/include/ #将头文件复制到cuda的include文件夹

然后进入lib64目录下,执行下面命令

sudo cp lib* /usr/local/cuda/lib64/

cd /usr/local/cuda/lib64/

sudo rm -rf libcudnn.so libcudnn.so.5 #删除原来的动态文件

sudo ln -s libcudnn.so.5.0.5 libcudnn.so.5 #添加链接

sudo ln -s libcudnn.so.5 libcudnn.so

sudo ldconfig #更新链接


到这里就cudnn就安装好了。

四、opecv3.1安装

这里需要安装很多依赖库,包括即将要装的caffe一些依赖库,反正都装就好了。

这个可以参考下另外一个帖子

安装完这些依赖库以后,进入opencv文件夹,执行下面命令

mkdir build  

cd build

cmake --D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local..

这里会提示有一个ipptv的包没有安装,可以等他继续下载也可以去网上下载好以后放到文件文件夹里面,具体做法是

建立一个这样的文件夹,名字为:linux-808b791a6eac9ed78d32a7666804320e

路径如下图



cmake成功会出现

Configuring done 

Generating done

然后

make -j8 #表示8个任务同时跑

make install

等待安装完成就可以了。完成以后可以输入下列的命令查看版本

pkg-config --modversion opencv 

出现对应的版本则安装成功

五、安装Anaconda3

直接进入安装包存在的地方执行

sudo sh xxxxxx.sh

然后按照提示安装就可以。

安装完以后,会提示是否加入环境变量,yes加入就可以。

然后需要更新一下anaconda的各种包,这里用conda update anaconda来执行,因为不更新的话,后面遇到导入caffe的时候会出各种错误,所以提前更新更好。

这里可能遇到提示权限不足的情况,查看了stackflow里面 的解决办法,输入下列命令,然后安装就可以。

sudo chmod 777 -R anaconda3

更新完了后就开始进行caffe的安装

六、caffe编译

解压caffe包,然后更改Makefile.config.example为Makefile.config

然后用gedit打开,这里需要修改几个重要的参数。

第一个

USE_CUDNN=1 #去掉前面的注释

第二个

OPENCV_VERSION=3 #去掉前面的注释,我们使用的是opencv3

第三个

# Anaconda Python distribution is quite popular. Include path:

# Verify anaconda location, sometimes it's in root.

ANACONDA_HOME := $(HOME)/anaconda3

PYTHON_INCLUDE := $(ANACONDA_HOME)/include \

        $(ANACONDA_HOME)/include/python3.5m \

        $(ANACONDA_HOME)/lib/python3.5/site-packages/numpy/core/include #将原来的修改成这样

第四个

# Uncomment to use Python 3 (default is Python 2)

PYTHON_LIBRARIES := boost_python-py35 python3.5m  

# PYTHON_INCLUDE := /usr/include/python3.5m \

#                 /usr/lib/python3.5/dist-packages/numpy/core/include

去掉第一个注释,并且要修改为这样,不然后面会报未定义的符号的错误。

这里原文是boost_python3  python3.5m,编译会出找不到文件的错误,从stackflow上面得知有一个解决方法



这里是查找自己系统的lboost-python对应的版本,我电脑上的是35,所以将 boost_python3改为 boost_python-py35就可以



第五个参数

# Whatever else you find you need goes here.

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include  /usr/include/hdf5/serial/  #这一行改为这样

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

第六个参数

# Uncomment to support layers written in Python (will link against Python libs)

WITH_PYTHON_LAYER := 1 #因为我就是要用Python来写

第七个参数

需要打开makefie文件,第181行

改为LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

然后保存退出。在caffe路径下面依次执行下面命令

make all -j8

make test

make runtest

完了以后直接

make pycaffe #编译python接口

到这里caffe基本上就搞定了,只要讲pycaffe的路径添加到Python的环境变量中就可以使用了。

sudo vim ~/.bashrc

在末尾加入

export PYTHONPATH=/home/ubuntu/caffe/caffe-master/python:$PYTHONPATH

前面一段是我电脑上的路径,你们根据caffe文件的路径添加就可以。然后保存退出

最后source ~./bashrc生效路径

如果没问题的话就可以在python 或者jupyter中import caffe了



到这里就完毕了。可以开始caffe的运用了,迫不及待想试试1080ti的威力。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubuntu cuda python opencv caffe