Numpy 导入“中止”
我正在使用一台安装了根权限的Linux服务器,上面有一个python2.7
(路径是/usr/bin/python2.7
)。然后我尝试通过下载源代码来安装Numpy,执行了python2.7 setup.py build; python2.7 setup.py install --user
。Numpy顺利安装到了~/.local/lib/python2.7/site-packages/numpy
目录下。结果我遇到了:
$ python2.7
Python 2.7.2+ (default, Dec 22 2011, 12:26:43)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Aborted
$
我该从哪里开始呢?我从来没见过这种情况!
(顺便提一下,默认的python版本是2.6,它在/usr/lib/pymodules/python2.6/numpy
目录下有一个正常工作的Numpy安装)
按照要求,这里有一个堆栈跟踪,(谢谢你给我的指导!)。整个内容可以在pastebin上查看。
Program received signal SIGABRT, Aborted.
0x00002aaaabdb31b5 in *__GI_raise (sig=<value optimized out>)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
in ../nptl/sysdeps/unix/sysv/linux/raise.c
(gdb) bt
#0 0x00002aaaabdb31b5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00002aaaabdb5fc0 in *__GI_abort () at abort.c:92
#2 0x00002aaab03fb9bd in free () from /usr/lib/python2.7/lib-dynload/_ctypes.so
#3 0x00002aaab03f8312 in ?? () from /usr/lib/python2.7/lib-dynload/_ctypes.so
#4 0x00002aaab03f8924 in ffi_closure_alloc () from /usr/lib/python2.7/lib-dynload/_ctypes.so
#5 0x00002aaab03f0af2 in _ctypes_alloc_callback () from /usr/lib/python2.7/lib-dynload/_ctypes.so
#6 0x00002aaab03eee68 in ?? () from /usr/lib/python2.7/lib-dynload/_ctypes.so
#7 0x00000000004b6ed5 in ?? ()
#8 0x0000000000425cdc in PyObject_Call ()
2 个回答
1
这看起来像是版本问题。确保你没有不小心把为Python 2.6构建的模块加载到Python 2.7中。
首先要检查的就是 $PYTHONPATH
和 sys.path
。
0
我从来没有搞清楚是什么原因导致这个问题,但我让管理员以超级用户的身份安装了numpy,现在它可以正常工作了。