为什么分段错误!当我尝试运行/使用Python Package gensim时?

时间:2011-06-29 14:45:39

标签: python segmentation-fault gensim

我试图在我的一些机器学习实验中使用[gensim][1],一个用于python的向量空间建模包。我按照here所述的安装说明进行了操作,但在我使用scipy时,我在OpenSuse 11.3上安装easy_install失败了,所以我从官方提供的软件包中安装了它包搜索门户here

scipy的安装没问题,然后我按照他们的建议使用easy_install来安装gensim。哪个也好了。

现在,在安装之后,我尝试运行他们使用该包的第一个示例,该示例以简单的import语句开头,如下所示:

from gensim import corpora, models, similarities

罗!当我试图在我的python解释器中运行它时,亲爱的事情与Segmentation Fault崩溃了!这就是发生的事情:

>>> from gensim import corpora, models, similarities
Segmentation fault

有人救了我,因为我不知道错误可能来自哪里。

我理解段错误通常是由于进程非法访问内存,因此导致这种情况会发生吗?或gensim内的某些错误?

有关更多信息,据说在安装软件包后可以对其进行测试,所以我这样做是为了测试我的gensim,Lo!同样的Segmentation Fault!这是输出:

python setup.py test
running test
running egg_info
writing requirements to gensim.egg-info/requires.txt
writing gensim.egg-info/PKG-INFO
writing top-level names to gensim.egg-info/top_level.txt
writing dependency_links to gensim.egg-info/dependency_links.txt
reading manifest file 'gensim.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.sh' under directory '.'
writing manifest file 'gensim.egg-info/SOURCES.txt'
running build_ext
Segmentation fault

对于依赖包,我有:

>>> numpy.version.version
'1.3.0'

>>> scipy.version.version
'0.8.0'

好的,按照评论中的要求,我确实将gdb挂钩到解释器,然后再次尝试import语句,然后这就是gdb在再次发生段错误时给出的内容:

(gdb) continue
Continuing.
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/time.so
Try: zypper install -C "debuginfo(build-id)=da29868e88d517efc61eed319c4a87b41404f932"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/strop.so
Try: zypper install -C "debuginfo(build-id)=1a5723f070198420ae565b728f267f00ae7e9885"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/cStringIO.so
Try: zypper install -C "debuginfo(build-id)=d02dafc8dd403786b35ee44d946fc67461c7af34"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_functools.so
Try: zypper install -C "debuginfo(build-id)=4d3d7d73a2d7abe3d4ac45bdc07a070abde67a3b"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_collections.so
Try: zypper install -C "debuginfo(build-id)=86c7e2481ef3930f858927648d270a96ef65e0d9"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/operator.so
Try: zypper install -C "debuginfo(build-id)=ecdf6c9dfbb007d3698e4108e2412b575b14c3f0"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/unicodedata.so
Try: zypper install -C "debuginfo(build-id)=b84b2bd4061ce43b8fe6e7319d0e3fe90431f3f9"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/cPickle.so
Try: zypper install -C "debuginfo(build-id)=0cb3d3c8e51cd264b7fc0cfd6ad6cea7da6173f1"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/itertools.so
Try: zypper install -C "debuginfo(build-id)=88125d7ede2ef83a18e46901c9b7bd938d7554b9"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_bisect.so
Try: zypper install -C "debuginfo(build-id)=e872da9d2f7456947a21d6cf8ac05115da084ee0"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_heapq.so
Try: zypper install -C "debuginfo(build-id)=0c250b23be656b9984a8fbf67c232930141c6a79"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/math.so
Try: zypper install -C "debuginfo(build-id)=48f975758f43cffc37703cda98615cb2daaf8a08"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/core/multiarray.so
Try: zypper install -C "debuginfo(build-id)=adcbae28e6012eecb870c60af4805f25554c9148"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/core/umath.so
Try: zypper install -C "debuginfo(build-id)=1087f0837567a96e6db9fadb8258f21113173f01"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/core/_sort.so
Try: zypper install -C "debuginfo(build-id)=c70e9c08253546b727376f7643cc9b6cc796465e"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/core/scalarmath.so
Try: zypper install -C "debuginfo(build-id)=cbc4ec89676c6072f64ae92a2917548479141eee"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/lib/_compiled_base.so
Try: zypper install -C "debuginfo(build-id)=6f71bf761290527c07afe78736211d2393caa95e"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/linalg/lapack_lite.so
Try: zypper install -C "debuginfo(build-id)=ac2cb74a8a055e3d58e15f4ac0012159abbf7d1a"
Missing separate debuginfo for /usr/lib/liblapack.so.3
Try: zypper install -C "debuginfo(build-id)=5c9cf054c3e366ea04681d3c3b1e4d1fa8b46da5"
Missing separate debuginfo for /usr/lib/libblas.so.3
Try: zypper install -C "debuginfo(build-id)=c7ea0a3cdf0da62f1f07f81838207e6070e86449"
Missing separate debuginfo for /usr/lib/libgfortran.so.3
Try: zypper install -C "debuginfo(build-id)=6889f5fdc16cb8d7cb4d5e97c59080336c2e6e01"
Missing separate debuginfo for /lib/libgcc_s.so.1
Try: zypper install -C "debuginfo(build-id)=ea12a9f70518dd6b807755150f1d2c6ba8550fe1"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/fft/fftpack_lite.so
Try: zypper install -C "debuginfo(build-id)=32599ba87256834ebc65a962e4718aa1f9134b0e"
Missing separate debuginfo for /usr/lib/python2.6/site-packages/numpy/random/mtrand.so
Try: zypper install -C "debuginfo(build-id)=e43ddcab2e8e2961f3ab58087ac55dffa4094993"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_ctypes.so
Try: zypper install -C "debuginfo(build-id)=40cde5dd7ee47a3caac1ce1f94b6ef7fa28792ff"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_struct.so
Try: zypper install -C "debuginfo(build-id)=a5c456fe75e29e3424d7881fc05be8321fa65707"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/binascii.so
Try: zypper install -C "debuginfo(build-id)=d3a2d6b38432a2b5076e238aef398cd3776bed20"
Missing separate debuginfo for /lib/libz.so.1
Try: zypper install -C "debuginfo(build-id)=afddd839a6c18dd308b04b5289c56cc3abd1384f"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/_random.so
Try: zypper install -C "debuginfo(build-id)=683d2819c1613d54dcd68c9169fc043ecb1b5444"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/fcntl.so
Try: zypper install -C "debuginfo(build-id)=aaabeb0dbb01b7a14698fd221d09fedc6de19521"
Missing separate debuginfo for /usr/lib/libjpeg.so.8
Try: zypper install -C "debuginfo(build-id)=5656b9563c388beee6e716dbe832ecb4480895ba"
Missing separate debuginfo for /usr/lib/python2.6/lib-dynload/array.so
Try: zypper install -C "debuginfo(build-id)=4e4aea1f2106d4a7a7b4dbd51199e337549b83e2"
Missing separate debuginfo for /usr/lib/libstdc++.so.6
Try: zypper install -C "debuginfo(build-id)=181385b3f6f58b2e13543468f07e08c5edd2cd86"

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()

1 个答案:

答案 0 :(得分:1)

您可能正在尝试在32位系统上运行64位二进制文​​件(或使用64位库)。

运行产生分段错误的任务时使用python -v,以查看是否可以确定它的位置。如果这还不够明确,请尝试strace python而不是python。如果在尝试“打开”.so文件后出现分段错误,则使用filereadelf之类的工具来查找二进制或.so库需要多少位。

如果你有一个686 Linux,那么一切都必须是32位。如果你有一个x86_64 Linux,那么它应该都是64位。