Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python';默认情况下不编译s bz2模块_Python_C_Compiler Construction - Fatal编程技术网

Python';默认情况下不编译s bz2模块

Python';默认情况下不编译s bz2模块,python,c,compiler-construction,Python,C,Compiler Construction,在默认情况下,Python2.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周二6月15:52:09 PDT 2006 i686 GNU/Linux IIRC我只使用了--prefix标志。首先需要正确安装libbz2.so(通用libbz2库),Python

在默认情况下,Python2.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周二6月15:52:09 PDT 2006 i686 GNU/Linux


IIRC我只使用了--prefix标志。

首先需要正确安装libbz2.so(通用libbz2库),Python才能构建自己的接口。这通常来自Linux发行版中的包,包名中可能包含“libbz2”和“dev”。

使用供应商的包管理添加包含bz2开发文件的包。它通常是一个名为“libbz2dev”的包。例如在Ubuntu上


sudo apt get install libbz2 dev

如果您正试图在RHEL5上编译Python,则该包名为bzip2 devel,如果您已设置RHN,则可以使用以下命令安装:

yum安装bzip2-devel


完成后,您不需要--enable-bz2或--with-bz2选项,但可能需要--enable-shared。

有两种解决方案:

备选案文1。安装bzip2-devel 在Debian及其衍生产品上,您可以像这样轻松安装:

sudo apt-get install bzip2-devel
备选案文2。构建并安装bzip2 在的自述文件中,解释了在某些平台下,即使用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
cd Python-2.7.3
./configure --prefix=/path/to/local 
make install
这里的关键位是以下命令:

make -f Makefile-libbz2_so
我已经完成了这项工作,之后又尝试再次构建Python,如下所示:

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
cd Python-2.7.3
./configure --prefix=/path/to/local 
make install

bzip2
bzip2-devel
在Centos等发行版上使用Yum时。Debian包名为:libbz2 dev自述文件的可能副本表示make-f Makefile-libbz2_so,而不是make-f Makefile_libbz2_可以找到包bzip2-devel(挤压)@chovy:“apt cache search bzip | fgrep-dev”。您可以尝试“libbz2 dev”这里有一个bug,如果您已经运行了
make
,那么在尝试
make-f Makefile-libbz2_so
@hlin117
-fPIC
是编译器的标志,而不是
make
的选项之前,必须先运行
make clean
。必须按如下方式将其作为环境变量传递:
make-f Makefile-libbz2\u so CFLAGS=“-fPIC”