近期由于要使用caffe,就装了一下Intel caffe。结果出现了好多error...
所以这篇帖子主要是针对遇到的一些问题,当然还有caffe配置的整个过程。
首先是配置依赖项:
sudo apt-get update
sudo apt-get install build-essential cmake git pkg-config
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install libatlas-base-dev
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install libopencv-dev
然后再在命令行中下载intel/caffe:
git clone https://github.com/intel/caffe.git
接下来修改配置:
cd caffe
cp Makefile.config.example Makefile.config
然后修改Makefile.config:
#把
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
#改为
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
#把
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
#改为
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial
然后编译:
make all
make test
make runtest
ps:我做到这一步的时候还没有遇到任何错误,如果有人遇到错误,请自行百度
下面就是配置caffe中的Python的相关问题了!!!(划重点)
首先是安装依赖库:
sudo apt-get install python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags cython ipython
sudo apt-get install protobuf-c-compiler protobuf-compiler
然后编译
cd caffe
make pycaffe
敲黑板!如果有同学make pycaffe不行的话,之前可以先make clean一下
然后添加PYTHONPATH:
sudo gedit /etc/profile
# 添加
export PYTHONPATH=/.../caffe/python:$PYTHONPATH
#到文件末尾(其中...是你自己电脑上的Python路径)
# 使之生效
source /etc/profile
然后执行import caffe查看是否可以成功import
注意:前方高能!!!
我自己的电脑是在import caffe之后遇到了这个问题
import error:while loading shared libraries: libmkl_dnn.so: cannot open shared object file: No such file or directory.
当时怎么查都找不到解决办法,真是要急死了。后来发现是路径问题。
解决方法:
在/etc/ld.so.conf中添加mkl的路径即可
#先切换到root用户,防止权限不够
su root
#进入指定目录
cd /etc/ld.so.conf
#使用gedit直接创建一个新的conf文件,当然文件名字可以自己起
gedit intel_mkl_settings.conf
#在文件中添加mkl路径
#如果没有安装过其他的mkl,那应该是在caffe/external中,则选择这个路径写进文件即可
#使文件生效
ldconfig
然后,再次import caffe就发现可以啦,吼吼吼