caffe-python3.5 安装教程(Linux版)

最近的工作需要用到caffe来进行量化,在此记录一下caffe的python3.5的安装方法,这个安装教程参考了如下几个博客的方法:
博客一:https://www.lxlinux.net/4672.html
博客二:https://blog.csdn.net/sinat_38439143/article/details/97244296(仅参考这个无法顺利安装)
博客三:https://blog.csdn.net/quantum7/article/details/83475300
博客四:https://blog.csdn.net/wangyu088/article/details/88313716

1.安装python3.5

wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tgz    #到python官网找到下载路径, 用wget下载
tar -zxvf Python-3.5.3.tgz                     #解压tgz包
mv Python-3.5.3 /usr/local                  #把python移到/usr/local下面
ll /usr/bin | grep python                      #删除旧版本的python依赖
rm -rf /usr/bin/python                         
cd /usr/local/Python-3.5.3/                 #进入python目录
./configure --prefix=/usr/local/  --enable-shared CFLAGS=-fPIC    #配置   跟博客一不同
make && sudo make install
rm -rf /usr/bin/python                     #删除旧的软链接,创建新的软链接到最新的python
ln -s /usr/local/bin/python3.5 /usr/bin/python
python -V

注意:上述 ./configure --prefix=/usr/local/ --enable-shared CFLAGS=-fPIC 这步要按照我这里的来,不然后边需要重新编译。

2.安装caffe

2.1.安装caffe

2.1.1. 安装依赖包

sudo apt-get update
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 python-dev

sudo apt-get install libatlas-base-dev

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

sudo apt-get install python-opencv

2.2. 下载caffe

git clone git://github.com/BVLC/caffe.git

2.3. 修改caffe下文件Makefile.config

cd caffe
cp Makefile.config.example Makefile.config

修改 Makefile.config
vim Makefile.config

  1. 去掉CPU_ONLY :=1的注释
  2. 注释掉CUDA有关的行:
    # CUDA_DIR := /usr/local/cuda
    #CUDA_DIR := /usr
    #CUDA_ARCH := ....
    #TEST_GPUID := 0
  3. 去掉WITH_PYTHON_LAYER := 1的注释
  4. 修改这一行:
    # Whatever else you find you need goes here.
    INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
    LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

5.去掉下面的注释:
PYTHON_LIBRARIES := boost_python3 python3.5m
PYTHON_INCLUDE := /usr/include/python3.5m /usr/lib/python3.5/dist-packages/numpy/core/include
同时将第一句改为:PYTHON_LIBRARIES := boost_python-py35 python3.5m

2.4. 修改caffe下文件Makefile

vim Makefile
找到LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
更改最后两项为:
LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

2.5. 编译

make all
make test
make runtest

3.pycaffe安装

3.1. 安装依赖库

cd caffe/python
for req in $(cat requirements.txt); do pip install $req; done

3.2 添加 PYTHONPATH

sudo vim /etc/profile
export PYTHONPATH=$PYTHONPATH:/home/XXX/caffe/python:$PYTHONPATH
** xxx为用户名(可以通过命令pwd查看)**
使上述更改生效
$ source /etc/profile

3.3编译

cd ~/caffe
make pycaffe

3.4 测试

python
import caffe

4 报错与解决方法

1.问题一:
from numpy.lib.arraypad import _validate_lengths
解决方法:降低numpy的版本 pip install numpy==1.15.0

2.问题二:
编译过程中遇到cannot find -lboost_python3
解决方法: 打开Makefile.config 修改为 PYTHON_LIBRARIES := boost_python-py35 python3.5m

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容