Ubuntu 16.04 安装配置MATLAB+Python +CUDA8.0+cuDNN+OpenCV3(2)

三:Cudnnv5的安装

  从官网下载最新的cudnn,网址:https://developer.nvidia.com/rdp/cudnn-download,如下图选择适当的cudnn版本

  

Ubuntu 16.04 安装配置MATLAB+Python +CUDA8.0+cuDNN+OpenCV3

本人下载放在Download目录下,进入该目录并解压,建立软连接,如下所示:

cd ./Download/ tar -xvzf cudnn-8.0-linux-x64-v5.1.tgz sudo cp ./cuda/include/cudnn.h /usr/local/cuda/include sudo cp ./cuda/lib64/lib* /usr/local/cuda/lib64 cd /usr/local/cuda/lib64/ sudo rm -rf libcudnn.so libcudnn.so.5 sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5 sudo ln -s libcudnn.so.5 libcudnn.so sudo ldconfig

四:matlab的安装与配置

  本人使用的matlab版本位:R2014b_glnxa64_withcrack.iso

1、挂载iso(需新建matlab_iso文件夹):
 
mkdir matlab_iso //主目录
  sudo mount -o loop R2014b_glnxa64_withcrack.iso  ~/matlab_iso
2、开始安装:
  cd
~/matlab_iso
 
sudo ./install
3、选择不联网安装
4、密钥输入,29797-39064-48306-32452
5、激活:选择”license.lic”文件进行激活(在crack文件夹下面)
6、将libmwservices.so复制到/usr/local/MATLAB/R2014b/bin/glnxa64中:
 
sudo cp libmwservices.so /usr/local/MATLAB/R2014b/bin/glnxa64/libmwservices.so

启动matlab后出现问题,可以参考这个帖子 。只需要将/sys/os/glnxa64/下的libstdc++.so.6 重命名位libstdc++.so.6.old.

五:Opencv3.1的安装

  opencv3.1的下载,网址链接:

  安装必要项:

1 sudo apt-get update 2 sudo apt-get install -y build-essential cmake git pkg-config 3 sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler 4 sudo apt-get install -y libatlas-base-dev 5 sudo apt-get install -y --no-install-recommends libboost-all-dev 6 sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev 7 sudo apt-get install -y Python-pip 8 sudo apt-get install -y python-dev 9 sudo apt-get install -y python-numpy python-scipy

 

sudo apt-get install build-essential sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

解压opencv并进入该目录:

cd opencv-3.1.0 mkdir build cd build cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

期间可能会卡在ippcv的下载中,Ctrl + c中断后,可以到 ippicv_linux_20151201.tgz 下载。将下载的文件替换掉 OpenCV-3.1.0/3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b下的同名文件。

make -j4 sudo make install

make过程中,出现了graphcuts.cpp 的错误,进行如下修改:

sudo vim ../modules/cudalegacy/src/graphcuts.cpp

将45行的#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)修改为#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)

编译完成后注意需要运行sudo make install执行安装 

六:Caffe编译  

1 cd ~ 2 git clone https://github.com/BVLC/caffe.git //从github上git caffe

  如果没有安装git,可以先使用sudo apt-get install git执行安装。

1 cd caffe 2 sudo cp Makefile.config.example Makefile.config 3 sudo vim Makefile.config

此时会修改caffe的编译配置,需要修改如下地方:

1 # USE_CUDNN := 1 修改成: USE_CUDNN := 1 2 # OPENCV_VERSION := 3 修改为: OPENCV_VERSION := 3 3 # WITH_PYTHON_LAYER := 1 修改为 WITH_PYTHON_LAYER:=1 4 #USE_OPENCV := 0 修改成 USE_OPENCV :=1 5 #USE_LEVELDB := 0 修改为 USE_LEVELDB:=1 6 #USE_LMDB := 0 修改位 USE_LMDB :=1 7 //修改matlab目录 8 将MATLAB_DIR := /usr/local/MATLAB/R2014b 9 //最终要的修改 # Whatever else you find you need goes here.下面的 10 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include 11 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 12 修改为:   INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial 13 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial //这是因为Ubuntu16.04的文件包含位置发生了变化,尤其是需要用到的hdf5的位置,所以需要更改这一路径

修改Makefile文件:

sudo vim Makefile 将 NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS) 替换为 NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

编辑/usr/local/cuda/include/host_config.h 将119行的

#error -- unsupported GNU version! gcc versions later than 5 are not supported! 修改为 //#error -- unsupported GNU version! gcc versions later than 5 are not supported!,即添加了注释,使之无效

进行编译:

sudo make all -j8 sudo make runtest -j8

若编译出现libcudart.so.8.0错误,则执行如下命令

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

此时正确情况如下图所示:

Ubuntu 16.04 安装配置MATLAB+Python +CUDA8.0+cuDNN+OpenCV3

编译matcaffe:

  执行 make matcaffe -j4

  显示MEX completed successfully,表示编译matcaffe成功,

  执行make mattest -j4 即运行matcaffe的测试程序,结果如下图:

  

Ubuntu 16.04 安装配置MATLAB+Python +CUDA8.0+cuDNN+OpenCV3

编译pycaffe

1 sudo make pycaffe -j4 2 sudo make distribute -j4 3 cd python 4 for req in $(cat requirements.txt); do sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple $req; done 5 cd ../

  运行make pytest -j4进行测试,出现如下图:

Ubuntu 16.04 安装配置MATLAB+Python +CUDA8.0+cuDNN+OpenCV3

表明pycaffe编译成功 在~/.bashrc 末尾添加export PYTHONPATH=/home/zf/caffe/python:$PYTHONPATH //自己对照自己路径。

打开python导入caffe 可以成功,如下:

Ubuntu 16.04 安装配置MATLAB+Python +CUDA8.0+cuDNN+OpenCV3

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/800ba49d61bcec094947de22b29f47f2.html