安装前的准备
1 建立独立的python运行环境
virtualenv(建议,更轻量,python版本可自选--我用的是ubuntu自带的3.5):
# 创建环境
virtualenv py3caffe2 --python=python3
virtualenv -p /usr/bin/python3.5 py3caffe2
# 启动环境
source py3caffe2/bin/activate
# 退出环境
deactivate
Anaconda(python版本可自选):
conda create -name py3caffe2 python=3.6.3
2 安装CUDA和cuDNN
如果你想编译GPU版本的caffe2(前提是你有GPU显卡),那么这一步是必需的!我使用的是CUDA 9.2.148 + cuDNN 7.6.2,看看能不能配置成功。安装教程可以参考我之前的文章。
3 检查GCC/G++版本
GCC版本因caffe2和CUDA要求,建议使用GCC-6但我这里是5.4.0
gcc -v
4 下载依赖库和软件
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 \
libopencv-dev \
libopenmpi-dev \
libsnappy-dev \
libprotobuf-dev \
openmpi-bin \
openmpi-doc \
protobuf-compiler \
python-dev \
python-pip
sudo pip install \
future \
numpy \
protobuf \
hypothesis
然后针对不同Ubuntu版本,安装以下库:
# for Ubuntu under 14.04
sudo apt-get install -y --no-install-recommends libgflags2 cmake3
# for Ubuntu upper 16.04
sudo apt-get install -y --no-install-recommends libgflags-dev cmake
注:安装Caffe报错:/usr/local/cuda-10.1/targets/x86_64-linux/lib/libcudnn.so.7 is not a symbolic link
(py3caffe2) heixiazi@HXZ-space:~$ pip -V
pip 20.3.4 from /home/heixiazi/py3caffe2/lib/python3.5/site-packages/pip (python 3.5)
解决:建立软连接
首先打开libcudnn.so.7所在的目录.
cd /usr/local/cuda-10.1/targets/x86_64-linux/lib
发现Libcudnn.so.7 和libcudnn.so.7.6.5 两个文件,但理论上只有一个libcudnn.so.7.0.5.
在终端执行:
sudo ln -sf /usr/local/cuda-10.1/lib64/libcudnn.so.7.6.5 /usr/local/cuda-10.1/lib64/libcudnn.so.7
重新运行以上安装依赖库代码!
注:安装依赖时报错Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-Z8tORQ/hypothesis/
解决:查看pip版本
(py3caffe2) heixiazi@HXZ-space:~$ pip -V
pip 20.3.4 from /home/heixiazi/py3caffe2/lib/python3.5/site-packages/pip (python 3.5)
以下方法没有用
pip3 install --upgrade pip