不纠结——caffe安装之旅(ubuntu16.10+gcc4.9+python2.7+cuda8.0+opencv3)

来源:互联网 发布:js常见的关键字直接量 编辑:程序博客网 时间:2024/06/05 12:32

本篇仅用来记录我的安装步骤,不一定有普适性。
前提:纯净的ubuntu16.10系统

1.安装显卡驱动

安装什么驱动要看你的显卡是什么,我的是GTX1080Ti,选择了nvidia-384

sudo apt-get remove --purge nvidia*sudo add-apt-repository ppa:xorg-edgers/ppasudo apt-get updatesudo apt-get install nvidia-384nvidia-smi

2.gcc降级

降级的原因在于系统自带的gcc是6.2版本,cuda不支持

sudo apt-get install gcc-4.9 g++-4.9cd /usr/binsudo rm gcc g++sudo ln -s gcc-4.9 gccsudo ln -s g++-4.9 g++

3.安装cuda V8.0.61

安装时注意不要安装显卡驱动,因为上一步已经安装了!
官网下载cuda_8.0.61_375.26_linux.run和cuda_8.0.61.2_linux.run

sudo sh cuda_8.0.61_375.26_linux.runsudo sh cuda_8.0.61.2_linux.runsudo vim ~/.bashrc# added by cuda-8.0export PATH=/usr/local/`这里写代码片`cuda-8.0/bin:$PATHexport LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATHexport CUDA_HOME=/usr/local/cudasource ~/.bashrc

4.安装cudnn V5.1

官网下载cudnn-8.0-linux-x64-v5.1.tar

tar xvf cudnn-8.0-linux-x64-v5.1.tarcd cudasudo cp include/cudnn.h /usr/local/cuda/include/sudo cp lib64/lib* /usr/local/cuda/lib64/cd /usr/local/cuda/lib64/sudo rm -rf libcudnn.so libcudnn.so.5sudo ln -s libcudnn.so.5.1.10 libcudnn.so.5sudo ln -s libcudnn.so.5 libcudnn.so

5.安装opencv3

查看当前是否安装了opencv:

pkg-config --modversion opencv 

安装依赖项:

sudo apt-get install gitsudo apt-get install python-pippip install cmakesudo apt-get install libgtk2.0-dev pkg-config python-dev python-numpysudo apt-get install libavcodec-dev libavformat-dev libswscale-devsudo apt-get install libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev sudo apt-get install libjasper-dev libdc1394-22-dev

下载opencv3源码:

wget https://github.com/opencv/opencv/archive/3.3.1.zipunzip 3.3.1.zipcd opencv-3.3.1/mkdir build &&cd buildcmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..make -j7sudo make install -j7

6.源码编译protobuf

如果直接apt-get安装很有可能导致错误

sudo apt-get autoremove libprotobuf-dev protobuf-compilergit clone https://github.com/google/protobuf.gitcd protobuf./autogen.sh./configuremakemake checksudo make installldconfig

7.源码编译leveldb

如果直接apt-get安装很有可能导致错误

sudo apt-get autoremove libleveldb-devwget https://codeload.github.com/google/leveldb/zip/masterunzip mastercd leveldb-master && make allsudo cp out-shared/libleveldb.so* /usr/local/libsudo cp -R include/* /usr/local/include

8.源码编译glog

如果直接apt-get安装很有可能导致错误

sudo apt-get autoremove libgoogle-glog-devwget https://github.com/google/glog/archive/v0.3.3.tar.gztar zxvf v0.3.3.tar.gzcd glog-0.3.3./configuremake -j7sudo make install

9.源码编译gflags

如果直接apt-get安装很有可能导致错误

sudo apt-get autoremovelibgflags-devwget https://github.com/schuhschuh/gflags/archive/master.zipunzip master.zipcd gflags-mastermkdir build && cd buildexport CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1make -j7sudo make install

10.源码编译boost

如果直接apt-get安装很有可能导致错误

sudo apt-get install libbz2-devsudo apt-get autoremovelibboost-all-devwget https://sourceforge.net/projects/boost/files/boost/1.61.0/boost_1_61_0.tar.gztar zxvf boost_1_61_0.tar.gzcd boost_1_61_0./bootstrap.sh./b2sudo ./b2 install

11.安装caffe & pycaffe

安装基本依赖项:

sudo apt-get install libsnappy-dev libopencv-dev libhdf5-serial-dev sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-devsudo apt-get install liblmdb-dev

下载caffe

git clone https://github.com/BVLC/caffecd caffecp Makefile.config.example Makefile.configvim Makefile.config 
# 修改如下几处地方,尤其是要把hdf5的路径加进去,否则会找不到USE_CUDNN := 1OPENCV_VERSION := 3INCLUDE_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

安装pycaffe依赖项:

cd caffe/pythonfor req in $(cat requirements.txt); do sudo pip install $req; done

编译caffe & pycaffe

make cleanmake pycaffemake allmake testmake runtest

添加环境变量

sudo vim ~/.bashrc# added by pycaffeexport PYTHONPATH=/home/zhoujie/caffe/python:$PYTHONPATHsource ~/.bashrc

测试:

pythonimport caffe# 没有报错信息即安装好了
阅读全文
0 0
原创粉丝点击