前言
前几天ubuntu服务器重新安装了一下,在编译安装caffe时也没有去先安装那些依赖库。纯粹是先git clone代码后直接开始编译。当然编译前需要修改下Makefile.config,具体可以参考前面一篇博客(https://blog.csdn.net/avideointerfaces/article/details/89111955)。
遇到的问题及其解决方法
在caffe编译及其安装时遇到的每个问题都列在下面。
1、fatal error: boost/shared_ptr.hpp: No such file or directory
sudo apt-get install libboost-all-dev
2、fatal error: gflags/gflags.h: No such file or directory
sudo apt-get install libgflags-dev
3、fatal error: glog/logging.h: No such file or directory
sudo apt-get install libgoogle-glog-dev
4 caffe/proto/caffe.pb.h: No such file or directory
sudo apt install protobuf-compiler
sudo apt install protobuf-c-compiler
5 fatal error: hdf5.h: No such file or directory
sudo apt install libhdf5-serial-dev
6 fatal error: google/protobuf/stubs/common.h: No such file or directory
sudo apt-get install libprotobuf-dev
7 fatal error: leveldb/db.h: No such file or directory
sudo apt-get install libleveldb-dev
8 fatal error: cblas.h: No such file or directory
sudo apt-get install libblas-dev
9 fatal error: lmdb.h: No such file or directory
sudo apt install liblmdb-dev
src/caffe/util/io.cpp:6:10: fatal error: opencv2/core/core.hpp: No such file or directory
src/caffe/util/io.cpp:76:34: error: ‘CV_LOAD_IMAGE_COLOR’ was not declared in this scope
注意,io.cpp里面用的是opencv2/3语法,所以这里的话就安装opencv3。补充,caffe可以使用opencv4,不过需要修改io.cpp里面代码。
10 /usr/bin/ld: cannot find -lsnappy
sudo apt install libsnappy-dev
11 /usr/bin/ld: cannot find -lcblas
/usr/bin/ld: cannot find -latlas
sudo apt install libatlas-base-dev
12 python/caffe/_caffe.cpp:10:10: fatal error: numpy/arrayobject.h: No such file or directory
sudo apt-get install python2.7-numpy
调用caffe遇到的问题及其解决办法
在python2.7里面import caffe遇到的问题如下:
ImportError: No module named skimage.io
注意,sudo pip install scikit-image由于网络的原因很难安装成功,所以采用另外一个方法:sudo apt install python-skimage
No module named google.protobuf.internal
解决办法:sudo apt-get install python-protobuf
至此就能在python2.7中import caffe成功。