在我的 Suse 系统中,我有以下 2 个版本的 Python:
# which python2.6
# /usr/bin/python2.6
# which python2.4
# /usr/local/bin/python2.4
2.6是系统一,2.4是我自己编译的。
如果我尝试使用 2.4 版本导入包:
# python2.4 -c "import bz2; print bz2.__doc__"
我收到以下错误:
# ImportError: No module named bz2
进行此操作的正确方法是什么?
答案1
Python 2.4 源代码中似乎有一个 bz2module.c,但默认情况下似乎没有编译,并且 Modules/Setup 中没有任何内容。可能是因为默认情况下未安装 bz2 的开发包。尝试在您的系统上找到 bzlib.h 文件:
$ find /usr/include -name bzlib.h
如果不存在,则安装适当的库包(Debian/Ubuntu 上的 libbz2-dev)。
之后尝试将以下内容添加到 Modules/Setup.local 中,然后重新编译 python 2.4。
bz2 bz2module.c