您的位置:首页 > 移动开发 > Objective-C

[PyCaffe]FatalError:numpy/arrayobject.h:No such file和ImportError:can't import name multiarray

2018-03-01 19:37 656 查看

环境

系统:Ubuntu 14.04.1

Python版本:2.7、3.4

问题1

在对Caffe编译过程中,一路顺利,显卡驱动、cuDNN等安装配置过程就不赘述了。

在进展到 编译Pycaffe 时,

命令 sudo make pycaffe -j4 出现错误如下:
python/caffe/_caffe.cpp:10:31: fatal error: numpy/arrayobject.h: No such file or directory


numpy没安装?怎么可能

在shell下命令:pip install numpy

    返回:Requirement already satisfied: numpy in /usr/local/lib/python3.4/dist-packages/numpy…

心想不对啊,这不是已经安装了为什么提示不存在,然后又去caffe源码根目录下的Makefile.config找PYTHON_INCLUDE。

PYTHON_INCLUDE := /usr/include/python2.7 \

/usr/local/lib/python2.7/dist-packages/numpy/core/include

这里也包括了INCLUDE目录,那么问题在哪呢。

直到用命令查看pip版本才把我打醒,发现问题所在。

pip–version

pip 9.0.1 from /usr/local/lib/python3.4/dist-packages (python 3.4)

numpy库是Python3.4,然而我在Caffe的Makefile包含目录里是Python2.7。

解决方案1

修改python软链接到Python2.7:
ln -s /usr/bin/python2.7 /usr/bin/python

下载pip:
wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz 
解压pip:
tar -zxvf pip-9.0.1.tar.gz

安装pip到Python2.7:
cd pip-9.0.1
sudo python setup.py install


问题2

修改完问题1,重新执行make pycaffe -j4,又出现新的错误:

File "/usr/local/lib/python2.7/dist-packages/numpy/core/__init__.py", line 6, in <module>
from . import multiarray
ImportError:cannot import name multiarray


还是numpy库里的问题,提示multiarray包不能导入。然后单独在python命令行中导入也不行。

$ python
Python 2.7.6 (default, Nov 23 2017, 15:49:48)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy (报错)


解决方案2

大概是刚刚把两个版本的python、pip还有啥库的整乱了。所以又把/usr/local/lib/python2.7/dist-packages/numpy目录清干净了,又重新用pip安装一遍numpy就好了。

$ cd /usr/local/lib/python2.7/dist-packages/
$ mkdir numpy_bak
$ sudo mv /usr/local/lib/python2.7/dist-packages/numpy* /usr/local/lib/python2.7/dist-packages/numpy_bak
$ pip install numpy
然后单独用python导入numpy正常,编译也能通过


参考

[1] Ubuntu下python3.5报错cannot import name ‘multiarray’

[2] http://d.hatena.ne.jp/aremokoremo/20140507/1399475248
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐