用到的软件:
Anaconda和PyCharm
大体操作步骤:
https://segmentfault.com/a/1190000012731554 ,不再赘述。但是到了 make all
这一步总要报和protobuf相关的错,不知道为什么所有安装教程都没有提到这里需要2.5或2.6版本的protobuf,但是anaconda里只有3.7的,所以这里需要重新安装。
给出两种方法:
- 在Anaconda里添加清华源,
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
conda install protobuf == 2.6.0
但是我添加源以后出现了显示安装成功但是在用protoc --version
查看找不到module的问题,目前还没有解决,不过最好能用这个方法,因为如果手动安装protobuf还需要改caffe里的搜索路径。
- 手动安装
https://blog.csdn.net/weiwangchao_/article/details/80396104
https://blog.csdn.net/start313/article/details/79418810
我主要参考的这篇文章,一定记得把你安装protobuf的路径也要加进去。最后再用protoc --version
查看是否安装成功。
继续安装caffe
重点来了,终于可以开始继续安装caffe接口了。
从cmake
这一步开始,除了改变Makefile里链接中的部分:
https://blog.csdn.net/qq_28256625/article/details/78893707
还有CMakeCache里的,下面部分改成如图
//Path to a file.
Protobuf_INCLUDE_DIR:PATH=/Users/apple/PycharmProjects/include
//Path to a library.
Protobuf_LIBRARY_DEBUG:FILEPATH=/Users/apple/PycharmProjects/lib/libprotobuf.dylib
//Path to a library.
Protobuf_LIBRARY_RELEASE:FILEPATH=/Users/apple/PycharmProjects/lib/libprotobuf.dylib
//Path to a library.
Protobuf_LITE_LIBRARY_DEBUG:FILEPATH=/Users/apple/PycharmProjects/lib/libprotobuf-lite.dylib
//Path to a library.
Protobuf_LITE_LIBRARY_RELEASE:FILEPATH=/Users/apple/PycharmProjects/lib/libprotobuf-lite.dylib
//The Google Protocol Buffers Compiler
Protobuf_PROTOC_EXECUTABLE:FILEPATH=/Users/apple/PycharmProjects/bin/protoc
//Path to a library.
Protobuf_PROTOC_LIBRARY_DEBUG:FILEPATH=/Users/apple/PycharmProjects/lib/libprotoc.dylib
//Path to a library.
Protobuf_PROTOC_LIBRARY_RELEASE:FILEPATH=/Users/apple/PycharmProjects/lib/libprotoc.dylib
在 cmake
和make all
时,不要删除anaconda里的protobuf也是关键,因为他会根据路径查看anaconda里是否有Protobuf,没有的话会报错,所以在make all
成功以后就可以把你anaconda下载的Protobuf删掉啦,然后按步骤安装,就没问题了。