Caffe: 导入错误:caffe.so:未定义符号:_ZN5caffe4mtx_E

创建于 2016-03-17  ·  9评论  ·  资料来源: BVLC/caffe

嗨,Caffe 用户,

我希望能够使用 pycaffe,所以我使用以下方法构建了 caffe:

make all
make test
make runtest
make pycaffe

一切运行顺利,有 2 个禁用测试。

但是,当我尝试在 python 控制台中导入 caffe 时发生错误:

17:35 $ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import caffe
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/syq/surveillance_video/tools/caffe/python/caffe/__init__.py", line 1, in <module>
    from .pycaffe import Net, SGDSolver
  File "/home/syq/surveillance_video/tools/caffe/python/caffe/pycaffe.py", line 13, in <module>
    from ._caffe import Net, SGDSolver
ImportError: /home/syq/surveillance_video/tools/caffe/python/caffe/_caffe.so: undefined symbol: _ZN5caffe4mtx_E

我使用 Ubuntu 14.04 和 Python 2.7.6,CUDA 7.0

这是我的 PYTHONPATH 的样子:
17:35 $ echo $PYTHONPATH
/home/syq/surveillance_video/tools/caffe/python:/home/syq/surveillance_video/tools/caffe/distribute/python:

有没有人知道 _ZN5caffe4mtx_E 来自什么?
请提供任何帮助! 谢谢!

最有用的评论

@xiw9我取消了注释,但我仍然遇到同样的错误!

所有9条评论

配置文件
取消注释以支持用 Python 编写的层(将链接到 Python 库)
WITH_PYTHON_LAYER := 1

谢谢xiw9!
取消注释该行:
WITH_PYTHON_LAYER := 1
解决了问题! 我不敢相信我错过了那个。

@xiw9我取消了注释,但我仍然遇到同样的错误!

@xiw9感谢您的回复! 我已经使用您的回答解决了这个问题。 这太神奇了!

它为python2.7正确编译
但是当我更改 makefile.config 为 python3 编译它时,我得到了同样的错误
我已经取消注释了,但我仍然遇到同样的错误

你是如何为 python3 修复它的? 我仍然有同样的错误...

它为python2.7正确编译
但是当我更改 makefile.config 为 python3 编译它时,我得到了同样的错误
我已经取消注释了,但我仍然遇到同样的错误

我是

@xiw9我取消了注释,但我仍然遇到同样的错误!
那么,你解决了吗?

5810 帮我修好了。

要记住的一件事是,您可能必须针对 Makefile.config 中的位置和库调整 python3.x 版本。

此页面是否有帮助?
0 / 5 - 0 等级