ubunt16.04+cuda9.0+cudnn+opencv3.4.0+caffe環境搭建
阿新 • • 發佈:2019-01-12
一、cuda安裝
要注意:禁用nouveau驅動,然後到官網下載顯示卡驅動,安裝好,再安裝cuda,建議run安裝,cuda安裝時不用再裝顯示卡驅動
二、cudnn
下載Linux檔案,解壓,複製到特定資料夾,進行軟連線,主要下載的版本檔名
三、opencv
安裝opencv3.4.0,其他較低版本可能不支援cuda9.0
解壓檔案,進入檔案目錄
mkdir build # 建立編譯的檔案目錄 cd build cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. make -j4
編譯過程需要科學上網,編譯完再安裝
sudo make install #安裝1
測試安裝是否成功
pkg-config --modversion opencv
四、安裝caffe
git clone https://github.com/BVLC/caffe.git
sudo cp Makefile.config.example Makefile.config
修改Makefile.config檔案
sudo gedit Makefile.config 去掉這些註釋 #USE_CUDNN := 1 #OPENCV_VERSION := 3 #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 改為: LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
這部分我安裝過程中沒修改,因為方向沒有下述語句
修改/usr/local/cuda/include/host_config.h(也可能是crt/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!
然後編譯
make all -j8
編譯遇到compute_20的報錯,解決方法:修改Makefile.config檔案,將CUDA_ARCH中有關compute_20的語句刪了
編譯成功後測試
sudo make runtest -j8
顯示pass則成功
這裡遇到報錯libopencv_core.so.3.4缺失,解決方法:sudo ldconfig /usr/local/lib/x86_64-linux-gnu
然後再安裝pycaffe
sudo gedit ~/.bashrc
新增一行
export PYTHONPATH=/home/selfdriving/caffe/python:PYTHONPATH
source ~/.bashrc
進入到caffe目錄
sudo make pycaffe -j8
測試
python
import python
遇到報錯skimage.io模組,解決:sudo pip install scikit-image。如果matplotlib裝不了,就升級pip,再安裝