Python 2.6 virtualenv,pip抛出“ImportError:没有名为_md5的模块”

2024-05-26 09:18:13 发布

您现在位置:Python中文网/ 问答频道 /正文

到目前为止,我一直在Python2.5下开发一个django站点(不相关),当时我想切换到Python2.6以确保那里的工作正常。然而,当我为2.6设置virtualenv时,pip抛出了一个错误“ImportError:No module named _md5”。

背景:

  • 我在Ubuntu Maverick 10.10上运行。
  • 我的python 2.5来自fkrull's deadsnakes repo,一直在工作,没有问题。
  • 我用virtualenv <path> --no-site-packages --python=python2.[56]创建virtualenvs

如果我尝试从virtualenv外部导入hashlib,它可以正常工作:

$ python2.6
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39) 
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib
>>>

但在里面也有同样的恐惧。

我试过重新安装python2.6、libpython2.6和python2.6-minimal并重新创建我的virtualenv,但是我得到了同样的错误。

没有一个list of potential duplicates不起作用,因为它们要么使用不同的linux发行版,要么只是说“重新编译python”。

有什么想法?


Tags: pipdjangonovirtualenv站点ubuntu错误md5
2条回答

问题的最终结果是python2.6的不同版本——我的virtualenv(实际上是我在更早的时候为同样的目的创建的)已经安装了python2.6.4,而系统的版本则高达2.6.6。

我试过virtualenv <path> --no-site-packages --python=python2.6 --clear,但显然--clear没有清除旧的python容器。

rm -rf-创建env目录并从头开始重新创建(因此venv也有2.6.6版本)解决了这个问题。

我也有类似的问题。我使用了从外部存储库签出的virtualenv。在virtualenv中,我有32位python2.6.4,在本地系统中,我有64位python2.6.6。当我打字的时候

>>> import hashlib

在我的virtualenv中,我收到了同样的异常(ImportError: No module named _md5)。真正的问题是导入_hashlib模块。它引发了异常ImportError: libssl.so.0.9.8: wrong ELF class: ELFCLASS64。解决方案是安装ia32-libs包。

相关问题 更多 >