作为一个在深度学习上的小白,买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文档。
有几处修改的地方。
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
这个时候应该不会有问题了,你会看到编译过程很顺利
编译过程需要点时间,你可以去喝杯咖啡。
最后就是安装成功!
期待我们更多的教程吧!