參考博客:http://www.linuxidc.com/Linux/2016-09/135034.htm
第一部分: 安装dependencies
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 libatlas-base-dev
sudo apt-get install libhdf5-serial-dev
PYTHON需要2.7版本,这是操作系统本身已经安装好的. 输入python2.7 --version 会显示具体的版本号说明安装了.
但是还需要
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
(以上所有sudo apt-get在什么文件夹下输入都无所谓.)
然后把CAFFE的源代码下载下来:
git clone https://github.com/BVLC/caffe.git
(当然没有安装GIT的得先安装一下)
下载完成之后,进入CAFFE文件夹, 进入里面的PYTHON文件夹,然后输入
for req in $(cat requirements.txt); do pip install $req; done
(PIP如果没有安装得先安装一下:sudo apt install python-pip)
第二部分: 安装CAFFE
到CAFFE文件夹, 使用模板写个Makefile.config. 具体就是先复制一下模板, 再改一些内容,我用的gedit修改文本
cp Makefile.config.example Makefile.config
(1)因为CPU MODE,
去掉注釋:CPU_ONLY := 1
(2)两个路径要改成这样:(添加后面的两个hdf5的路径, 否则编译时报hdf5错误)
# Whatever else you find you need goes here. maybe i386
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
(3)
將CUDA_DIR和CUDA_ARCH注釋掉
(4)去掉注釋:BLAS := atlas
(5)去掉注釋:
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include
PYTHON_LIB := /usr/lib
(6)去掉注釋
WITH_PYTHON_LAYER := 1
TEST_GPUID := 0
(4)去掉注釋:BLAS := atlas
(5)去掉注釋:
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include
PYTHON_LIB := /usr/lib
(6)去掉注釋
WITH_PYTHON_LAYER := 1
TEST_GPUID := 0
修改完了之後,編譯 pycaffe
make pycaffe
make all
make test
make runtest
--结果显示ALL TESTS PASSED就安装好了, 只需要再加上一个PYTHONPATH, 可是在命令設置
export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH, 但是每次使用都要設置一下。所以我將PYTHONPATH添加到了.bashrc文件中,每次打開終端都會自動設置路徑。
另外, 这个make默认是用CPU单核运算,如果想要快一点, 比如我想使用四核, 在make后面加上-j4标签.
如果上面4行某一行报错之后想要重试,建议先make clean再重新开始.
第三部分: 设置 Python Caffe
这时候应该可以了,试验一下:
$ python2.7
Python 2.7.12 (default, Jul 1 2016, 15:12:24)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import caffe
>>>
说明安装全部完成!
第四部分: 错误解決
基本上所有错误都是因为dependencies缺乏或者路径不对,所以根据具体的错误信息对症下药.例如:
(1)编译时显示hdf5错误, 按照上面所说, 增加路径之后就解决了.
-import caffe时显示scikit-image错误, 那就安装一下scikit-image就好了.
pip install scikit-image
(2) 在make all 的时候出现如下错误
Error 'fatal error: pyconfig.h: No such file or directory' when executing 'make pycaffe' on dev-branch #410解决方案:
make clean
export CPLUS_INCLUDE_PATH=/usr/include/python2.7
make all -j8