本文共 2721 字,大约阅读时间需要 9 分钟。
docker 下 ubuntu caffe 配置记录:
(每一步都很重要,每一个地方不注意都有可能出错)
先贴出 编译成功代码
CXX src/caffe/util/upgrade_proto.cppCXX src/caffe/util/im2col.cppCXX src/caffe/util/math_functions.cppCXX src/caffe/util/db_leveldb.cppCXX src/caffe/util/blocking_queue.cppCXX src/caffe/util/hdf5.cppCXX src/caffe/util/io.cppCXX src/caffe/util/cudnn.cppCXX src/caffe/util/db_lmdb.cppCXX src/caffe/util/benchmark.cppCXX src/caffe/util/signal_handler.cppCXX src/caffe/util/insert_splits.cppCXX src/caffe/common.cppCXX src/caffe/syncedmem.cppAR -o .build_release/lib/libcaffe.aLD -o .build_release/lib/libcaffe.so.1.0.0CXX/LD -o .build_release/tools/caffe.binCXX/LD -o .build_release/tools/compute_image_mean.binCXX/LD -o .build_release/tools/upgrade_net_proto_binary.binCXX/LD -o .build_release/tools/upgrade_net_proto_text.binCXX/LD -o .build_release/tools/convert_imageset.binCXX/LD -o .build_release/tools/upgrade_solver_proto_text.binCXX/LD -o .build_release/tools/extract_features.binCXX/LD -o .build_release/examples/mnist/convert_mnist_data.binCXX/LD -o .build_release/examples/siamese/convert_mnist_siamese_data.binCXX/LD -o .build_release/examples/cifar10/convert_cifar_data.binCXX/LD -o .build_release/examples/cpp_classification/classification.binroot@dd1466f1fbbc:/home/l1/caffe_package/caffe-master#
1. 通过git 下载 caffe 源码
git clone git://github.com/BVLC/caffe.git
2. 进入 caffe目录下
cd caffe
3.生成Makefile.config文件
cp Makefile.config.example Makefile.config
4. 修改Makefile.config文件中的配置:
1)编辑Makefile.config文件:
sudo vim Makefile.config
2) 将下方的语句前的注释符号去掉:
USE_CUDNN := 1OPENCV_VERSION := 3CUDA_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_52,code=sm_52 \ -gencode arch=compute_60,code=sm_60 \ -gencode arch=compute_61,code=sm_61 \ -gencode arch=compute_61,code=compute_61WITH_PYTHON_LAYER := 1
此处注意 编译 caffe前 需要opencv 的版本 为 3..系列 ,不能用4..系列(笔者使用4.1.0编译 不符合文档中 OPENCV_VERSION := 3 的要求一直报错)。
此处 我使用的cuda版本是10.0 ,cudnn 版本为 与cuda10.0 匹配的cudnn7.6.5
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/serialLIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial
之后 :wq保存退出。
vim Makefile
打开文件:
将语句更改为:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
# NVCCFLAGS += -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
保存
执行命令:
make all -j8
执行测试:
make runtest
配置完成。
转载地址:http://kkczb.baihongyu.com/