Ubuntu16.04 Cuda8.0 Cudnn5.1 opencv3.30 caffe 环境配置

电脑配置(戴尔台式、win10 ubuntu16.04双系统、集成显卡 nvidia gt730显卡 双显卡)

一 安装依赖:

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

二 安装nvidia显卡驱动

1 查询驱动型号并下载:(http://www.nvidia.com/Download/index.aspx?lang=en-us)

2 开始安装:

2.1 禁用secure Boot

secure Boot 会阻止第三方驱动安装,安装nvidia显卡驱动需要禁用该功能。
很多朋友被迫BIOS里面禁用UEFI,这样虽然可以解决问题,但是会影响Windows 等系统的启动。
其实,可以不禁用BIOS里面的UEFI安全启动。
用Mok管理工具,禁用 shim->grub2 这一步之后的校验就行了

sudo mokutil --disable-validation

输入上述命令,会要求你设置一个 8-16位的密码,你设置好后(比如8个8)重启,重启第一次,会有几秒钟提示你按任意键进入MoK管理界面,然后按照提示输入刚才设置的密码对应位,然后管理Mok,禁用Secure boot 即可

2.2 禁用集成显卡驱动:

编辑:

sudo gedit /etc/modprobe.d/blacklist.conf 

最后一行加上:

 blacklist nouveau

更新:

sudo update-initramfs -u

重启电脑~ 这里要尤其注意,安装显卡驱动要先切换到文字界面,(按Ctrl+Alt+F1~F6)。所以,启动电脑后,先进入文字界面。登录root后输入:

 lsmod | grep nouveau 

查看集成显卡驱动是否禁用成功。

2.3 关闭图形界面执行安装

集成显卡驱动禁用成功后,输入命令:

sudo service lightdm stop

关闭X-Win窗口。
现在可以安装驱动了,先进入nvidia驱动下载目录 ,然后输入:

sudo ./NVIDIA-Linux-x86_64-**.run

按照提示一步步来。若是没能安装,可能是权限问题,输入:

 chmod 777 NVIDIA-Linux-x86_64-**.run 

修改权限后再安装。完成后,再次重启电脑。(或者输入命令sudo service lightdm start,打开X-Win窗口,然后ALT+CTRL+F7切换回图形界面即可。)
安装完成之后输入以下指令进行验证:

sudo nvidia-smi

若列出了GPU的信息列表则表示驱动安装成功。

三 安装cuda

1 下载cuda,官网(https://developer.nvidia.com/cuda-downloads),下载runfile(local)

2 安装cuda

sudo chmod 777 cuda_*_linux.run 
sudo ./cuda_*_linux.run

(注意:执行后会先出现一个声明,需要阅读到100%,同意声明后才会开始安装。)
安装时首先会有一系列提示让你确认,但是注意,有个让你选择是否安装nvidia显卡驱动时,一定要选择否。其余选择默认或者yes。

3 配置环境变量

sudo gedit ~/.bashrc (最后一行添加)
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH  
export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH 
sudo gedit /etc/profile(最后一行添加)
export PATH=/usr/local/cuda/bin:$PATH
sudo gedit /etc/ld.so.conf.d/cuda.conf
/usr/local/cuda/lib64
sudo ldconfig(使配置生效)

4 验证

cd /usr/local/cuda-*/samples/1_Utilities/deviceQuery  
sudo make  
./deviceQuery

四 安装cudnn5.1

1 下载cudnn5.1,官网或者百度云(https://blog.csdn.net/seven_year_promise/article/details/78390882

2 安装

sudo tar -zxvf ./cudnn-8.0-linux-x64-v5.1.tgz

2.1 复制头文件

cd cuda/include
sudo cp cudnn.h /usr/local/cuda/include  

2.2 复制动态链接库

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

2.3 删除原有动态文件

cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5   

2.4 生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)

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

2.5 使配置生效

sudo ldconfig /usr/local/cuda/lib64

五 安装opencv3.30

1 下载opencv3.30 代码包

2 安装依赖

sudo apt-get install --assume-yes libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip
sudo apt-get install build-essential cmake git
sudo apt-get install ffmpeg libopencv-dev libgtk-3-dev python-numpy python3-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libv4l-dev libtbb-dev qtbase5-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip

3 开始安装

mkdir build
cd build/
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
make
sudo make install
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
sudo apt-get update

4 方便卸载

sudo apt-get install checkinstall
sudo checkinstall

六 安装caffe

1 安装依赖

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y build-essential cmake git pkg-config
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install -y libatlas-base-dev 
sudo apt-get install -y --no-install-recommends libboost-all-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install -y python-pip
sudo apt-get install -y python-dev
sudo apt-get install -y python-numpy python-scipy

2 下载caffe

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

3 开始安装

3.1 复制配置文件

sudo cp Makefile.config.example Makefile.config

3.2 打开并修改配置文件:

sudo gedit Makefile.config #打开Makefile.config文件

a.若使用cudnn,则将 #USE_CUDNN := 1 改成 USE_CUDNN := 1
b.若使用的opencv版本是3的,则将 #OPENCV_VERSION := 3 改成 OPENCV_VERSION := 3
c.若要使用python来编写layer,则将 #WITH_PYTHON_LAYER := 1 改成 WITH_PYTHON_LAYER := 1
d.若需使用多GPU,将 #USE_NCCL := 1 改为 USE_NCCL := 1
e.若使用matlab,修改matlab路径为:

MATLAB_DIR := /usr/local/MATLAB/R2014a/ (your matlab path)

f. 重要的一项 :将# Whatever else you find you need goes here.下面的

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 

修改为:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial  

3.3 修改Makefile 文件

打开makefile文件,做如下修改,将:

 NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)

替换为:

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

CXXFLAGS += -MMD -MP

的下方,添加

CXXFLAGS += -std=c++11

3.4 其他配置

编辑/usr/local/cuda/include/host_config.h
将其中的第115行注释掉:

#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

改为

//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

3.5编译

make all -j4 #-j根据自己电脑配置决定
sudo make runtest

到此caffe配置完毕!

3.6 MNIST数据集测试

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

相关链接:
https://blog.csdn.net/jiangyanting2011/article/details/78873113
https://www.cnblogs.com/longmao-yiran/p/6832374.html
https://blog.csdn.net/sinat_34521860/article/details/73440722
https://blog.csdn.net/mynotwo/article/details/78661664

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章