5

我下载 python2.6.6 源代码http://www.python.org/getit/releases/2.6.6/ 之后我运行这些命令 ./configure make

我试图导入 zlib,但它说没有名为 zlib 的模块。如何为它安装 zlib 模块

在我尝试安装 python2.6.8 之后,我得到了同样的错误,没有 zlib。安装时出现以下错误

未能找到构建这些模块所需的位:

_bsddb             _curses            _curses_panel   
_hashlib           _sqlite3           _ssl            
_tkinter           bsddb185           bz2             
dbm                dl                 gdbm            
imageop            linuxaudiodev      ossaudiodev     
readline           sunaudiodev        zlib            

要查找必要的位,请在 detect_modules() 中的 setup.py 中查找模块名称。

未能构建这些模块:

crypt              nis   
4

4 回答 4

8

我尝试了以下这些对我有一些帮助的模块。
您必须编辑 setup.py。
在 setup.py 中找到以下行:

lib_dirs = self.compiler.library_dirs + [
   '/lib64', '/usr/lib64',
   '/lib', '/usr/lib',
   ]

对于 64 位
添加/usr/lib/x86_64-linux-gnu

lib_dirs = self.compiler.library_dirs + [
   '/lib64', '/usr/lib64',
   '/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu',
   ]

对于 32 位
添加/usr/lib/i386-linux-gnu

lib_dirs = self.compiler.library_dirs + [
   '/lib64', '/usr/lib64',
   '/lib', '/usr/lib', '/usr/lib/i386-linux-gnu',
   ]

注意x86_64-linux-gnu&i386-linux-gnu可能位于系统中的其他位置,因此请相应地进行路径。

在此之后,您将只剩下以下模块:

_bsddb             bsddb185           dbm             
gdbm               sunaudiodev  
于 2012-08-11T03:07:37.740 回答
3

我解决了添加LDFLAGS=-L/usr/lib/x86_64-linux-gnuconfigure参数的问题。

于 2013-04-18T17:28:05.673 回答
2

我为自己写了一个注释来解决您的问题,可能会有所帮助:python installation

你真的需要bsddbsunaudiodev模块吗?您可能不想这样做,因为自 python 2.6 以来两者都已弃用

于 2012-09-21T14:18:33.057 回答
1

我遇到了这个确切的问题(也有确切的 python 分布)Dmity 的答案几乎奏效了......但经过几个小时的搜索,我想我找到了问题(假设你使用的是 ubuntu 11.10 - 12.10)

好的,所以对我来说,至少问题源于 Ubuntu 禁用了 SSLv2,所以解决方法相当复杂。基本上,除了将库路径添加到设置文件之外,您还必须在构建之前深入研究源代码并删除对 SSLv2 的所有引用。我按照本教程进行操作,现在我有了一个使用 python-2.6.8 的可用 virtualenv:

http://ubuntuforums.org/showthread.php?t=1976837

(不使用这些补丁很容易实现patch)希望这有助于解决问题。

于 2013-04-28T04:16:29.033 回答