测试运行tensorflow框架的PSPNet网络失败,还是决定转向“科班出生”的caffe框架。于是就踏上了这条不归路,走的弯路很多,因此简单做了一些整理,希望可以给大家一些帮助。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y build-essential cmake git pkg-config
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install -y libatlas-base-dev
sudo apt-get install -y --no-install-recommends libboost-all-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install -y python-opencv
ps:具体什么位置无所谓,个人习惯
cp Makefile.config.example Makefile.config
CPU_ONLY := 1
#PYTHON_INCLUDE := /usr/include/python2.7 \
# /usr/lib/python2.7/dist-packages/numpy/core/include
PYTHON_LIBRARIES := boost_python3 python3.5m
PYTHON_INCLUDE := /usr/include/python3.5m \
/usr/lib/python3.5/dist-packages/numpy/core/include
PYTHON_INCLUDE的第二部分根据情况而定,读者可以搜索dist-packages的具体路径。可能是/usr/local/lib/python3.5/dist-packages/numpy/core/include
# 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/hdf5/serial
make all -j4
make test -j4
make runtest -j4
默认是1核运算,-j4设置为4核运算,加快编译速度,可根据自己的情况设置。
udo apt-get install -y python-pip
sudo apt-get install -y python3-dev
sudo apt-get install -y python3-numpy python3-scipy
sudo apt-get install gfortran
sudo pip install –r python/requirements.txt
make pycaffe -j4
运行成功后,可进入caffe/python目录,执行python3
命令进入python窗口,输入import caffe
不报错即可。
修改bashrc文件,添加以下语句,设置环境变量vi ~/.bashrc
export PYTHONPATH=/你的caffe路径/python:$PYTHONPATH
设置生效:source ~/.bashrc
此时,在终端(不局限与caffe目录下)使用import caffe
都不报错,即caffe安装成功。
ld cannot find lboost_python3
提示找不到lboost_python3,因此可以通过建立一个软连接指向对应的库文件
cd /usr/lib/x86_64-linux-gnu
sudo ln -s libboost_python-py35.so libboost_python3.so
...anaconda3/lib/libpng16.so.16:对‘inflateValidate@ZLIB_1.2.9’未定义的引用
解决方法:在Makefile.config文件末尾加入语句,就可以找到对应的文件
LINKFLAGS := -Wl,-rpath,$(HOME)/anaconda3/lib
warning:libpcre.so.1, needed by ...../anaconda3/lib/libgobject-2.0.so.0, not found
以及后续的/usr/local/lib/libopencv_highgui.so:对‘jpeg_set_quality@LIBJPEG_9.0’未定义的引用
推荐先使用情况二对应的解决方法,理论上可以解决。如果还不行,就一条一条添加软链接。具体方法:win键打开搜索栏,搜索libpcre.so.1,找到其地址,添加软连接到\usr\lib
即可,如
sudo ln -s ~/anaconda3/lib/libpcre.so.1 /usr/lib/
对于其他库文件也类似处理。