ubuntu配置caffe总体流程大体分为以下几步骤:
(1)安装依赖包 (2)禁用 nouveau (3)配置环境变量 (4)下载 CUDA 8.0 (5)安装 CUDA 8.0 (6)验证 CUDA 8.0 是否安装成功 (7)安装 cudnn (8)安装 opencv3.1 (9)安装 caffe (10)安装 pycaffe notebook 接口环境
但是,本博文针对大多数服务器中的情况,CUDA、cudnn已经安装OK,同时服务器中安装了anaconda。
一、第一步:安装依赖包 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 安装成功后,再次安装则会显示版本。
二、第二步:安装opencv3.1 进入到opencv官方:opencv.org/releases.ht…
选择 3.1.0 版本的 source , 下载 opencv-3.1.0.zip;
进入到该目录下
cd opencv-3.1.0 mkdir build # 创建编译的文件目录 cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. make -j8 #编译 大概编译到92%的时候会出现很多错误:
原因就是由于opecv3.1与cuda8.0不兼容导致的。
【解决方法】修改 /opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp 文件内容
编译成功后在build目录下安装:
sudo make install #安装 之后查看版本号:
pkg-config --modversion opencv 得到显示结果:
三、第三步:caffe安装 从github官网中下载caffe
git clone github.com/BVLC/caffe.… 复制Makefile.config.example到Makefile.config文件:
sudo cp Makefile.config.example Makefile.config 修改 Makefile.config 文件内容
将#USE_CUDNN := 1修改成:USE_CUDNN := 1 将#OPENCV_VERSION := 3 修改为:OPENCV_VERSION := 3 将#WITH_PYTHON_LAYER := 1 修改为 :WITH_PYTHON_LAYER := 1 修改 python 路径 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.config文件:
download.csdn.net/download/yq…
编译caffe:
make all 四、出现错误 1. 编译的时候出现warning: The 'compute_20' and 'sm_20' architectures are deprecated
makefile.config中将
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_50,code=compute_50 改为:
CUDA_ARCH := -gencode arch=compute_30,code=sm_30 \ -gencode arch=compute_35,code=sm_35 \ -gencode arch=compute_50,code=sm_50 \ -gencode arch=compute_50,code=compute_50 2. 报错'.build_release/lib/libcaffe.so.1.0.0' failed sudo ln -s /usr/lib/x86_64-linux-gnu/libcaffe.so.1.0.0 /usr/lib/libcaffe.so.1.0.0
可能是libboost_thread.so路径出现问题;
#查找libboost_thread.so的位置
locate libboost_thread.so #将其链接至/usr/lib下,此处查出来的路径是/usr/lib/x86_64-linux-gnu/libboost_thread.so,其他路径根据情况替换
sudo ln -sf /usr/lib/x86_64-linux-gnu/libboost_system.so /usr/lib/libboost_thread.so 3. //home/idc/anaconda3/lib/libpng16.so.16: undefined reference to `inflateValidate@ZLIB_1.2.9'
在Makefile.config加入:
LINKFLAGS := -Wl,-rpath,$(HOME)/anaconda3/lib 五、编译通过 make clean make all
sudo make run sudo make runtest
--------------------- 作者:蹦跶的小羊羔 来源:CSDN 原文:blog.csdn.net/yql_6175402… 版权声明:本文为博主原创文章,转载请附上博文链接! |
|