在服务器上编译caffe

更改Sources

工欲善其事,必先利其器。Ubuntu默认的Sources被神秘力量阻隔而无法访问,pip最近也很不稳定,所以第一步是将其换成稳定可用的Sources。

更改Ubuntu的Sources

参照这篇博客中的教程。

  1. vim /etc/apt/sources.list
  2. :%s/archive.ubuntu.com/debian.ustc.edu.cn/g
  3. sudo rm /var/lib/apt/lists/* -vf
  4. sudo apt-get update

更改pip的Sources

  1. mkdir -m 777 ~/.pip
  2. sudo vim ~/.pip/pip.conf
  3. 将以下内容粘贴到文件中并保存

    1
    2
    3
    [global]
    trusted-host=pypi.tuna.tsinghua.edu.cn
    index-url=https://pypi.tuna.tsinghua.edu.cn/simple

    这里使用的是清华大学的镜像源,可以手动更改成其他源。

    如果系统没有pip,并且get-pip.py不能使用时,可以先通过sudo apt-get install python-pip安装pip,通常这种方法安装的是低版本的pip,需要获取更新。
    如果pip版本过低,可以先卸载:sudo pip uninstall pip,然后使用get-pip.py安装。

    安装依赖

    1
    2
    3
    4
    5
    6
    7
    8
    9
    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 python-dev
    sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
    sudo apt-get install libopenblas-dev
    sudo apt-get install --no-install-recommends libboost-all-dev
    sudo apt-get install python-protobuf
    sudo apt-get install python-numpy python-pydot
1
2
pip2 install scikit-image
pip2 install opencv-python

如果pip版本较低,可能还需要sudo apt-get install libatlas-base-dev gfortran

修改Makeile.config

常修改的有CUDA路径,PYTHON INCLUDE路径等。(Anaconda与默认配置会有区别)

编译

make all
make pycaffe

将caffe/python添加到python系统路径

vim ~/.bashrc
export PYTHONPATH=path/to/caffe/python:$PYTHONPATH添加到文件中。
source ~/.bashrc 使更改生效。
此时在python shell中输入import caffe,可以加载caffe