CAFFE编译记录

以下实验都在Ubuntu16.04环境下完成,其他系统环境仅做参考。

环境安装

sudo apt-get install --no-install-recommends build-essential cmake git libatlas-base-dev libboost-all-dev libgflags-dev libgoogle-glog-dev libhdf5-serial-dev liblapack-dev libleveldb-dev liblmdb-dev libopenblas-dev libopencv-dev libprotobuf-dev libsnappy-dev protobuf-c-compiler protobuf-compiler python-numpy

安装NVIDIA显卡驱动、cuda、cudnn、tensorrt

略。

遇到的一些问题

找不到hdf5.h

参考 https://blog.csdn.net/lisatiy/article/details/80366386
在进行 $make all操作时,报错找不到 “hdf5.h”

需要更改"Makefile.config"文件中的包含目录
找到

INCLUDE_DIRS := $(PYTHON_INCLUDE)/usr/local/include

在后面加上"serial"的包含目录,即:

INCLUDE_DIRS := $(PYTHON_INCLUDE)/usr/local/include /usr/include/hdf5/serial/

同事需要修改"Makefile"文件,找到

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

要求对C++11的支持

参考 https://blog.csdn.net/u010158659/article/details/78110484
在“Makefile”文件中找到

CXXFLAGS += -pthread -fPIC $(COMMON_FLAGS) $(WARNINGS)
NVCCFLAGS += -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
# mex may invoke an older gcc that is too liberal with -Wuninitalized
MATLAB_CXXFLAGS := $(CXXFLAGS) -Wno-uninitialized
LINKFLAGS += -pthread -fPIC $(COMMON_FLAGS) $(WARNINGS)

在“CXXFLAGS”、“NVCCFLAGS”、“LINKFLAGS”行末,各添加-std=c++11

protobuf 安装

参考 https://blog.csdn.net/twilightdream/article/details/72953338
https://github.com/google/protobuf/releases/ 下载Source code

#安装 Protocol Buffer 依赖
sudo apt install autoconf automake libtool curl
#解压,进入解压后的文件夹,运行 autogen.sh 脚本
./autogen.sh
#运行 configure.sh 脚本
./configure
#编译未编译的依赖包
make
#检查依赖包是否完整
make check
#安装
sudo make install
#配置动态链接库
sudo ldconfig
#检查 Protocol Buffer 是否安装成功
protoc --version

opencv安装

下载源码并解压

mkdir build # 创建编译的文件目录
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j8  #编译
sudo make install #安装
pkg-config --modversion opencv  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值