|  | ## 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 |