转载请注明出处:
http://www.cnblogs.com/darkknightzh/p/5993405.html
之前在一台台式机上在python中使用import caffe时,没有出错。但是在服务器上使用import caffe时,提示no module named google.protobuf.internal。
在protobuf-2.6.1的文件夹内,有python文件夹的README.txt里面写了怎么安装python的支持。
1. 终端定位到protobuf-2.6.1/python中,然后输入:
python setup.py build
安装完之后,就可以了。
如果继续输入
python setup.py google_test
可能会有错误:
raise exceptions.UnparsedFlagAccessError(error_message)
貌似不用管吧。终端中继续输入
python
import caffe
不会提示no module named google.protobuf.internal了。
2. 如果到此处,只有当终端在protobuf-2.6.1/python目录内时,python中import caffe才不会报错。当终端在其他文件夹内时,import caffe依旧会出错。在终端中输入如下命令:
export PYTHONPATH=/home/XXX/protobuf-2.6./python:$PYTHONPATH
之后输入:
source ~/.bashrc
后,在其他文件夹内使用python时,import caffe便不会出错了。
说明:
刚才查了一下,台式机上python是默认的/usr/lib/python2.7,而服务器上是在其他路径下的miniconda2。可能这个原因,导致服务器上直接编译protobuf后,在使用时,由于python路径不对,出错了吧(瞎猜的)。。。