参考:https://blog.csdn.net/u013842516/article/details/80604409
记录一下装了两天的caffe2
1、 Ubuntu默认为python2.7,首先需要把python环境切换到python3.5,依次执行如下命令:
cd /usr/bin
sudo rm python
sudo ln -s python3.5m python
输入python命令,查看python版本是否切换到python3.5,然后ctrl+D退出python环境
2、 接下来根据官网流程安装caffe2
sudo apt-get update
sudo apt-get install -y --no-install-recommends
build-essential
cmake
git
libgoogle-glog-dev
libgtest-dev
libiomp-dev
libleveldb-dev
liblmdb-dev
sudo apt-get install libopencv-dev
在安装上面这个libopencv-dev时会提示没有安装一些依赖,如下图所示,则需要自己一个个的安装每个赖。
sudo apt-get install libopenmpi-dev
libsnappy-dev
libprotobuf-dev
openmpi-bin
openmpi-doc
protobuf-compiler
python3-dev
python3-pip
sudo pip install
future
numpy
protobuf
sudo apt-get install -y --no-install-recommends libgflags-dev
3、 开始下载caffe2源码,在home目录下git
git clone --recursive https://github.com/pytorch/pytorch.git && cd pytorch
这个过程可能网速太慢,导致下载失败,如果是third party里的东西没下载全,可以自己手动到上面这个链接上去下载,放到对应目录下。
git submodule update --init
mkdir build && cd build
sudo cmake .. -DPYTHON_INCLUDE_DIR=/usr/include/python3.5 -DUSE_MPI=OFF.
Cmake时要加上后面的选项,否则后面会出错:
如果不加-DUSE_MPI=OFF,在编译到90%左右时报错
undefined reference to symbol _ZN3MPI8Datatype
DSO missing from command line
-DPYTHON_INCLUDE_DIR=/usr/include/python3.5,在import caffe2.python.core时报错
CRITICAL:root:Cannot load caffe2.python. Error: /home/arogozhn/projects/onnx/caffe2/build/caffe2/python/caffe2_pybind11_state.so: undefined symbol: _Py_ZeroStruct
这是cmake用python2.7编译去了
确保上面python3.5径是你的路径下面是cmake的输出,核对一下python版本是否是python3.5:
sudo make install
4、 配置下环境变量
export PYTHONPATH=$PYTHONPATH:/home/nvidia/pytorch/build
确保上面的路径是你的build目录
不配置这个环境变量,在import caffe2时报错no module named caffe2
5、 测试是否安装成功
cd ~ && python -c 'from caffe2.python import core' 2>/dev/null && echo "Success" || echo "Failure"