caffe 安装与matlab2014a 安装
前言
这段时间一直在弄这个caffe安装,在网上找了很多的资料,自己在电脑上ubuntu16.04.3系统上安装caffe进行实验
安装步骤内容:
1. Caffe安装
2. Matlab2014a安装
Caffe安装
安装依赖
安装通用依赖
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
安装ATLAS
sudo apt-get install libatlas-base-dev
剩余依赖,官网上说大概是14.04版的系统,但也没管索性就安装了
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
下载caffe
从github上下载caffe源码
git clone https://github.com/BVLC/caffe.git
修改相应配置
进入到caffe源码文件中
cd /home/[user_name]/caffe
复制Makefile.config.example 在caffe文件夹中为Makefile.config
cp Makefile.config.example Makefile.config
修改Makefile.config内容
- 我们这个只用CPU模式,取消#CPU_ONLY := 1 的注释
- 在相应的位置添加红字的部分 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/hdf5/serial
这个路径在32位系统可能是i386-linux-gnu,所以自己要find /usr/lib -name serial
查找
编译安装
make all
make test
make runtest
到此这个编译完成
Matlab接口编译
Matlab2014a安装
下载好matlab2014a,最近下载的都是zip压缩包,淡疼在ubuntu系统中解压老师出现问题,所以在windows 中解压出来,这里压缩包有两个包 解压哪个都行(也没在意),还有Crack文件夹用于破解。
挂在iso文件挂载到/media上
sudo mkdir /media/matlab
mount -o loop MATHWORKS_R2014A.iso /media/matlab
进入到/media/matlab 安装
./install
安装过程中使用readme.txt 中的序列号,安装过程导入.lic 文件,要将Crack/Linux文件夹下的libmwservices.so 复制到 /usr/local/MATLAB/R2014A/bin/glnxa64覆盖掉原有的.so文件,在caffe源码文件,中修改Makefile.config中matlab安装的路径。
安装完成后可以sudo matlab
命令执行。
编译Matlab接口
接下来是编译matlab接口,真的是让人崩溃,后来查了很多的资料发现还是挺简单的。
首先,进入到之前caffe源包文件夹下的路径,找到makefile文件,在CXXFLAGS += -MMD -MP
的下一行加入CXXFLAGS += -std=c++11
,
执行编译
make matcaffe
中间会出现小小的警告不予理会。
进入到~/.bashrc
文件,加入下面的内容:
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/:/usr/local/cuda-8.0/lib64
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4:/usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:/usr/lib/x86_64-linux-gnu/libfreetype.so.6
重启电脑,这一步也可以source ~/.bashrc
使之生效
测试matlab接口
make mattest
至此大功告成。