环境 | ubuntu16.04+cuda8.0+cuDnn5.1+opencv3.4.0

0 笔记本配置

1 待安装列表

  1. 系统:ubuntu16.04
  2. NVIDIA驱动
  3. cuda8.0
  4. cuDnn5.1
  5. opencv3.4.0

2 NVIDIA驱动

ubuntu16.04直接可以安装驱动,就不需要手动安装了,这个很给力哦~

  1. 打开系统设置-软件与更新


  2. 如上图默认为下面这个选项,ubuntu16.04会根据机器的GPU类型推荐适合的显卡驱动给我们,我的电脑是version384,点击它然后应用即可。


  3. 完成之后在命令行输入sudo dpkg --list | grep nvidia-*就可以查看到当前的NVIDIA驱动:

3 cuda8.0+cuDnn5.1

3.1 安装cuda8.0

  1. 进入cuda8下载页下载CUDA
    按照自己的要求选择,并选择runfile安装方案,我的如下所示:
  2. 下载cuda_8.0.27_linux.run文件,约1.4G
  3. 按照官网提示执行语句:sudo sh cuda_8.0.27_linux.run
  4. 注意: 接下来的一系列提示都选择确认或者默认,唯独除了是否安装INVIDIA驱动这一项点no,因为我们之前已经安装了适合自己的确定了。
    选no,no,no

ERROR:

Error1: unsupported compiler: 5.4.0. Use --override to override this check.
解决1: 按照提示在命令后加上--override

Error2: cannot find Toolkit in /usr/local/cuda-8.0
解决2: sudo apt install nvidia-cuda-toolkit,这个过程大概需要30分钟。

  1. 重新运行一下sudo sh cuda_8.0.27_linux.run --override(没有问题的直接跳过),成功以后如下所示:

  2. 环境变量设置并写到~/.bashrc尾部

export PATH="/usr/local/cuda-8.0/bin:$PATH"  
export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH"  

复制上面的语句到~./bashrc文件尾部即可。

3.2 检查cuda是否安装成功

  1. 检查路径 ~/dev 下 有无存在名为 nvidia* (以nvidia开头)的多个文件(device files)


  2. 检查 CUDA Toolkit是否安装成功 nvcc -v

  3. 编译samples例子,进入到Samples安装目录,然后在该目录下终端输入make,等待十来分钟。

这个时候报错了,提示错误信息:

ERROR: unsupported GNU version! gcc versions later than 5.3 are not supported
解决: GCC版本太高,回到~目录,进行降版本,将gcc版本降到4.9:

sudo apt-get install g++-4.9
sudo apt-get install gcc-4.9

cd /usr/bin
sudo rm gcc
sudo ln -s gcc-4.9 gcc
sudo rm g++
sudo ln -s g++-4.9 g++

再用gcc -v即可查看到版本为4.9.3

这个时候再次进入sample目录进行make操作

  1. 程序测试,在Samples里面找到bin/x86_64/linux/release/目录,并切换到该目录
    运行deviceQuery程序,sudo ./deviceQuery
    成功啦

    如图所示,result=pass表示安装成功。

3.3 cudnn安装

  1. 下载cudnn5.1,下载地址

  2. 把tar文件解压后,进入文件目录

  3. 将里面的头文件cudnn.h以及库文件拷贝到cuda的安装目录中,我的安装目录是在/usr/local/cuda/

sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

到这里为止,cuda8.0+cudnn5.1就安装好了。也就是基本搭建好了深度学习的gpu环境,接下来就可以在这个基础上装各种深度学习框架:caffe、tensorflow、pytorch等等,有机会的话后买再出一篇深度学习框架的安装教程~

4 opencv3.4.0

  1. 安装步骤主要参考: ubuntu16.04<源码编译安装OpenCV3.4.0>
  2. 首先去opecnv官网下载3.4.0的安装包
  3. 更新系统
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade
sudo apt-get -y autoremove
  1. 安装依赖
# Build tools:
sudo apt-get install -y build-essential cmake

# GUI (if you want to use GTK instead of Qt, replace 'qt5-default' with 'libgtkglext1-dev' and remove '-DWITH_QT=ON' option in CMake):
sudo apt-get install -y qt5-default libvtk6-dev

# Media I/O:
sudo apt-get install -y zlib1g-dev libjpeg-dev libwebp-dev libpng-dev libtiff5-dev libjasper-dev libopenexr-dev libgdal-dev

# Video I/O:
sudo apt-get install -y libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libv4l-dev libxine2-dev

# Parallelism and linear algebra libraries:
sudo apt-get install -y libtbb-dev libeigen3-dev

# Python:
sudo apt-get install -y python-dev python-tk python-numpy python3-dev python3-tk python3-numpy
  1. 再次更新系统
sudo apt update
sudo apt upgrade
  1. 解压zip安装包并且创建build文件夹
mkdir build
cd build
sudo cmake ../

结果如下所示:


  1. 编译

输入命令sudo make即可。

ERROR:
make2: [modules/core/CMakeFiles/cuda_compile.dir/src/cuda/./cuda_compile_generated_gpu_mat.cu.o]
Error 1 make1: [modules/core/CMakeFiles/opencv_core.dir/all] Error 2

解决: 由于nvcc版本太高,在build目录下输入:
cmake -D CMAKE_BUILD_TYPE=bulid -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..

然后继续执行sudo make进行编译,这里又是一杯咖啡的时间;
emm,不止一杯咖啡....好慢...喔喔

啊啊啊,终于成功了,放张图纪念下。


  1. 安装
    输入命令sudo make install
    如下图,安装一下还是很快的~

  2. 测试一下



    如下图所示,python2.7.12与python3.5.2都已经安装好了opencv3.4.0!

5 参考文献

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,561评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,218评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,162评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,470评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,550评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,806评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,951评论 3 407
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,712评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,166评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,510评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,643评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,306评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,930评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,745评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,983评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,351评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,509评论 2 348

推荐阅读更多精彩内容