| ## Building Caffe2 |
| |
| This guide builds from source. For alternatives, refer to https://caffe2.ai/docs/getting-started.html |
| |
| Get latest source from GitHub. |
| |
| git clone --recursive https://github.com/caffe2/caffe2.git |
| cd caffe2 |
| |
| Note that you might need to uninstall existing Eigen and pybind11 packages due to compile-time dependencies when building from source. For this reason, Caffe2 uses git submodules to reference external packages in the third_party folder. These are downloaded with the --recursive option. |
| |
| #### MacOS X |
| |
| brew install openblas glog gtest automake protobuf leveled lmdb |
| mkdir build && cd build |
| cmake .. -DBLAS=OpenBLAS -DUSE_OPENCV=off |
| make |
| |
| #### Ubuntu |
| |
| ###### Ubuntu 14.04 LTS |
| sudo apt-get install libprotobuf-dev protobuf-compiler libatlas-base-dev libgoogle-glog-dev libgtest-dev liblmdb-dev libleveldb-dev libsnappy-dev python-dev python-pip libiomp-dev libopencv-dev libpthread-stubs0-dev cmake |
| sudo pip install numpy |
| wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_8.0.44-1_amd64.deb |
| sudo dpkg -i cuda-repo-ubuntu1404_8.0.44-1_amd64.deb |
| sudo apt-get update |
| sudo apt-get install cuda |
| sudo apt-get install git |
| |
| CUDNN_URL="http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz" && |
| curl -fsSL ${CUDNN_URL} -O && |
| sudo tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local && |
| rm cudnn-8.0-linux-x64-v5.1.tgz && |
| sudo ldconfig |
| |
| mkdir build && cd build |
| cmake .. |
| make |
| |
| ###### Ubuntu 16.04 LTS |
| sudo apt-get install libprotobuf-dev protobuf-compiler libatlas-base-dev libgoogle-glog-dev libgtest-dev liblmdb-dev libleveldb-dev libsnappy-dev python-dev python-pip libiomp-dev libopencv-dev libpthread-stubs0-dev cmake |
| sudo pip install numpy |
| wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb |
| sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb |
| sudo apt-get update |
| sudo apt-get install cuda |
| sudo apt-get install git |
| |
| CUDNN_URL="http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz" && |
| curl -fsSL ${CUDNN_URL} -O && |
| sudo tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local && |
| rm cudnn-8.0-linux-x64-v5.1.tgz && |
| sudo ldconfig |
| |
| mkdir build && cd build |
| cmake .. |
| make |
| |
| ## Python support |
| |
| To use Caffe2 in Python, you need two libraries, future and six. |
| |
| pip install future six |
| |
| To run the tutorials, download additional source from GitHub. |
| |
| git clone --recursive https://github.com/caffe2/tutorials.git caffe2_tutorials |
| cd caffe2_tutorials |
| |
| You'll also need jupyter (formerly ipython) notebooks and matplotlib, which can be installed on MacOS X with |
| |
| brew install matplotlib --with-python3 |
| pip install jupyter |