专栏首页GPUS开发者【入门篇】一个小白在Jetson TX2上安装caffe的踩坑之旅

【入门篇】一个小白在Jetson TX2上安装caffe的踩坑之旅

作为一个在深度学习上的小白,买Jetson TX2一个很大的原因就是想学习深度学习。那么当用Jetpack刷好板子后,第一个任务肯定是要学着安装caffe!

本文教程是参考了jiongnima的博客 (http://blog.csdn.net/jiongnima/article/details/70040262)和创客智造的文章(http://www.ncnynl.com/archives/201705/1631.html)——对于小白来说,站在大神的肩膀上可以节省不少时间。

好了,现在开始我们的踩坑之旅。

本教程第一步就是:用Jetpack3.0刷板子!

因为这一步顺利做完,表明一些基本环境都有了!包括OpenCV4Tegra、CUDA 8.0, 和 cuDNN 5.1。

开始之前,按照大神的教程,我们核对一下各关键软件的版本号,确保大家的环境是一致的。

1.确认一下CUDA版本:

输入 nvcc -V

2.然后检查一下其他安装或者自带组件的版本,按照大神的教程,如下:

在我这里,可以顺利显示g++版本,但是检查cmake版本的时候,会显示cmake没有安装的信息,所以你执行这条:

sudo apt-get install cmake

安装cmake后,再检查版本,就可以顺利显示出来。

接下来就是配置caffe!

先执行这两条:

sudo add-apt-repository universe

sudo apt-get update

一、

安装一般依赖项

sudo apt-get install libprotobuf-dev

sudo apt-get install libleveldb-dev

sudo apt-get install libsnappy-dev

sudo apt-get install libhdf5-serial-dev

sudo apt-get install protobuf-compiler

sudo apt-get install --no-install-recommends

sudo apt-get install libboost-all-dev

不要问我为什么要这样写指令,对于小白来说,我觉得这样一个一个执行,比较有安全感...

二、

安装Blas依赖项

sudo apt-get install libatlas-base-dev

三、

安装其它依赖项

sudo apt-get install libgflags-dev

sudo apt-get install libgoogle-glog-dev

sudo apt-get install liblmdb-dev

sudo apt-get install python

sudo apt-get install python-dev

sudo apt-get install python-numpy

sudo apt-get install ipython

sudo apt-get install ipython-notebook

sudo apt-get install python-sklearn

sudo apt-get install python-skimage

sudo apt-get install python-protobuf

四、

安装git,下载代码

sudo apt-get install python-skimage

sudo apt-get install python-protobuf

sudo apt-get install git

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

五、

编译caffe

前面执行应该都非常顺利,

sudo cd caffe

sudo cp Makefile.config.example Makefile.config

当你执行:

sudo make all -j8

便会出现/include/caffe/util/hdf5.hpp:6:18: fatal error: hdf5.h: No such file or directory

这个时候需要修改一下makefile文档。

有几处修改的地方。

  1. 打开Makefile.config文档,把USE_CUDNN := 1这一行之前的井号注释去掉(因为日后要使用cuDNN)
  2. 为了匹配cuda8.0的计算能力,把Makefile.config中CUDA_ARCH中的前两行去掉,如下图所示(保留也行,编译的时候会弹出警告)

3.在Makefile.config文件中,添加 /usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码(大概在第92行)。 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/

4. 在Makefile文件中,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码(大概在第180行)。

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5 LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

六、

再编译一次

sudo make clean

sudo make all -j8

这个时候应该不会有问题了,你会看到编译过程很顺利

编译过程需要点时间,你可以去喝杯咖啡。

最后就是安装成功!

期待我们更多的教程吧!

本文分享自微信公众号 - 吉浦迅科技(gpusolution),作者:Lady

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-06-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【Jetson开发项目展示】自适应交通控制系统

    【项目团队】Chathuranga Liyanage, Sandali Jayaweera

    GPUS Lady
  • Tensor Core

    Tensor Core,也是Volta架构里面最重磅的特性。 ? Tensor Core实际上是一种矩阵乘累加的计算单元。矩阵乘累加计算在Deep Learn...

    GPUS Lady
  • 【入门篇】在Jetson TX2上跑典型CUDA例子遇到的非典型错误

    作为一个嵌入式开发的小白,当你拿到Jetson TX2开发板,并且成功用Jetpack 3.0刷完板子以后(也就是说明,此时你的TX2板子上已经安装好CUDA、...

    GPUS Lady
  • [视频教程] 包管理器方式安装使用openresty新手上路

    OpenResty是一个通过Lua扩展Nginx实现的可伸缩的Web平台,内部集成了大量精良的Lua库、第三方模块以及大多数的依赖项。 用于方便地搭建能够处理超...

    陶士涵
  • ceres-solver

    小飞侠xp
  • ROS init.sh

    sudo apt-get install vim sudo apt-get install openssh-server sudo apt-get instal...

    Pulsar-V
  • 搜狗拼音设置

    将里面的 Keyboard-English(US) 调到 Sogou Pinyin 之前即可。

    JNingWei
  • ubuntu使用MAC主题

    ubuntu使用MAC主题,步骤如下: 1. 下载mac壁纸(Download MacBuntu OS Wallpapers and extract to p...

    若与
  • Ubuntu 17.04系统下源码编译安装opencv的步骤详解

    本文主要针对Ubuntu 17.04版本下,opencv进行源码编译安装。开发环境主要针对python 对 openCV库的调用。下面话不多说了,来一起看看详细...

    砸漏
  • Ubuntu常用软件安装(附带地址和卸载自带软件)

    跨平台系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#linux 上次说了安装VSCode(http:/...

    逸鹏

扫码关注云+社区

领取腾讯云代金券