似乎Python 2.6.1默认情况下不会从源代码编译bz2库。
我没有lib-dynload / bz2.so
添加它的最快方法是什么(不从头开始安装Python)?
操作系统是Linux 2.4.32-grsec + f6b + gr217 + nfs + a32 + fuse23 + tg +++ opt + c8 + gr2b-v6.194#1 SMP Tue Jun 6 15:52:09 PDT 2006 i686 GNU / Linux的
IIRC我只使用了--prefix flag。
答案 0 :(得分:32)
首先需要正确安装libbz2.so(通用libbz2库),以便Python能够构建自己的接口。这通常来自Linux发行版中的软件包,可能在软件包名称中包含“libbz2”和“dev”。
答案 1 :(得分:24)
使用供应商的软件包管理添加包含bz2开发文件的软件包。它通常是一个名为“libbz2-dev”的软件包。例如。在Ubuntu上
sudo apt-get install libbz2-dev
答案 2 :(得分:17)
这种麻烦有两种解决方案:
在Debian和衍生品上,您可以像这样轻松安装:
sudo apt-get install bzip2-devel
在bzip2 package的README文件中,解释了在某些平台下,即那些使用Linux-ELF二进制文件的平台,你必须构建一个额外的共享对象文件,如下所示:
wget http://bzip.org/1.0.6/bzip2-1.0.6.tar.gz
tar xpzf bzip2-1.0.6.tar.gz
cd bzip2-1.0.6
make
make -f Makefile-libbz2_so
make install PREFIX=/path/to/local # /usr/local by default
这里的关键位是以下命令:
make -f Makefile-libbz2_so
我已经完成了这个,之后再次尝试构建Python,如下所示:
cd Python-2.7.3
./configure --prefix=/path/to/local
make install
答案 3 :(得分:8)
如果您正在尝试在RHEL5上编译Python,则该程序包称为 bzip2-devel ,如果您设置了RHN,则可以使用此命令进行安装:
yum install bzip2-devel
完成后,您不需要--enable-bz2或--with-bz2选项,但您可能需要--enable-shared。