配置ubuntu17.04,cuda9.0,cudnn7.5。这些安装方法不介绍了gcc,g++用4.8,不然很多错误
1.caffe安装
依赖安装
sudo apt build-dep caffe-cuda
配置make
cp Makefile.config.example Makefile.config
修改makefile.config
1.USE_CUDNN := 1
2.以下位置
# CUDA architecture setting: going with all of them.
# For CUDA < 6.0, comment the *_50 through *_61 lines for compatibility.
# For CUDA < 8.0, comment the *_60 and *_61 lines for compatibility.
# For CUDA >= 9.0, comment the *_20 and *_21 lines for compatibility.
CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
-gencode arch=compute_20,code=sm_21 \
-gencode arch=compute_30,code=sm_30 \
-gencode arch=compute_35,code=sm_35 \
-gencode arch=compute_50,code=sm_50 \
-gencode arch=compute_52,code=sm_52 \
-gencode arch=compute_60,code=sm_60 \
-gencode arch=compute_61,code=sm_61 \
-gencode arch=compute_61,code=compute_61
删除一下两行
-gencode arch=compute_20,code=sm_20 \
-gencode arch=compute_20,code=sm_21 \
3.运行以下代码,不然会报错。(caffe的依赖安装不完整)
sudo apt-get install --no-install-recommends libboost-all-dev
4.boost库1.62导致的问题
查看boost版本
dpkg -S /usr/include/boost/version.hpp
错误:
/usr/local/cuda/include/crt/common_functions.h:64:24: error: token ""__CUDACC_VER__ is no longer supported. Use __CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, and __CUDACC_VER_BUILD__ instead."" is not valid in preprocessor expressions
解决方法:安装1.6.5的boost
https://www.jianshu.com/p/b280a9f90b05
5.错误/include/caffe/util/mkl_alternate.hpp:14:19: fatal error: cblas.h: No such file or directory
解决办法:sudo apt-get install libblas-dev
6.error: namespace "std" has no member "isnan"
解决办法
在usr/include/x86_64-linux-gnu/c++/4.8/bits/c++config.h中添加一下两个声明
#define _GLIBCXX_USE_C99 1
#define _GLIBCXX_USE_C99_MATH 1