第一步
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install git cmake build-essential
第二步
在設置裏面安裝 nvidia 驅動
然後重啓。
完畢。
驗證:在終端中輸入nvidia-smi
出來一堆,成功安裝nvidia driver
第三步
安裝 cuda
1)官網
https://developer.nvidia.com/cuda-downloads(最新版cuda地址)
https://developer.nvidia.com/cuda-toolkit-archive(舊版 cuda 地址)
我下載的是.run 格式的
2)cd 到下載目錄,然後sudo sh 下載的 cuda.run 運行
一堆回車然後accept,n,y,y,y(第一個 n 其他都是 y或者回車)
然後環境變量(終端下)
sudo gedit ~/.bashrc
打開後在末尾加上
exportPATH=/usr/local/cuda-8.0/bin:$PATH
exportLD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
保存
source ~/.bashrc
完畢。
驗證:(命令行)
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
最後是Result = PASS 就對了(一半)
然後命令行下 nvcc -V 出現當前 cuda 版本說明全對!
第四部安裝 cudnn
官網https://developer.nvidia.com/rdp/cudnn-download
注意下載正確的包
然後終端 cd 到下載文件下
然後根據http://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#axzz4qYJp45J2
安裝,簡單說就是
sudo dpkg -i libcudnn7_7.0.3.11-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.0.3.11-1+cuda9.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.0.3.11-1+cuda9.0_amd64.deb 按照這個格式安裝剛纔下的3個包
驗證:命令行下
cp -r /usr/src/cudnn_samples_v7/ $HOME
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
Test passed!
若 test passed 就恭喜安裝 cudnn 成功。
下一步安裝 tensorlfow
首先官網https://www.tensorflow.org/install/install_linux
然後
sudo apt-get install cuda-command-line-tools (沒有我也不清楚我錯在哪裏)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64
sudo apt-get install python-pip python-dev
pip install tensorflow-gpu
然後 python
import tensorflow 果然不行 庫沒連接對
然後退出來
然後找到地方,連接下
sudo ln -s <path>libcudnn.so.7.* <path>libcudnn.so.6
前面的是自己的後面的他缺的。
最後 import 驗證。
接着Opencv
首先環境
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
sudo apt-get install --assume-yes libopencv-dev libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip
sudo apt-get install ffmpeg libopencv-dev libgtk-3-dev python-numpy python3-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libv4l-dev libtbb-dev qtbase5-dev libfaac-dev libmp3lame-dev libopencore-amrnb
然後git
git clone https://github.com/opencv/opencv.git
cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
修改/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp 文件
其中
//#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)||(CUDART_VERSION>=8000)
修改如上即可
回到build
make -j8
sudo make install
驗證:
首先終端中:
pkg-config --modversion opencv
出現opencv版本,成功一半
然後python
import cv2
不抱錯 ,恭喜,成功安裝opencv
安裝 caffe
首先 git
git clone https://github.com/BVLC/caffe.git
cd caffe 把他給的 example 複製
sudo cp Makefile.config.example Makefile.config
編輯
sudo gedit Makefile.config
其中
將#USE_CUDNN := 1修改成: USE_CUDNN := 1
將#OPENCV_VERSION := 3 修改爲: OPENCV_VERSION := 3
將#WITH_PYTHON_LAYER := 1 修改爲 WITH_PYTHON_LAYER := 1
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
改爲
INCLUDE_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
修改 Makefile 文件
將:NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
替換爲:NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
將: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
然後修改 /usr/local/cuda/include/host_config.h 文件 :
將#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
改爲//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
然後回到caffe 文件
make all -j8
然後出現了什麼鏈接庫 問題(libopencv_core.so.3.4: cannot open shared object file: No such file or directory)的
sudo vim /etc/ld.so.conf
加入/usr/local/lib
sudo ldconfig
然後 run 一下