Módulo bz2 de Python no compilado por defecto

3 minutos de lectura

Modulo bz2 de Python no compilado por defecto
piotr bizia

Parece que Python 2.6.1 no compila la biblioteca bz2 de forma predeterminada desde la fuente.

No tengo lib-dynload/bz2.so

¿Cuál es la forma más rápida de agregarlo (sin instalar Python desde cero)?

El sistema operativo es Linux 2.4.32-grsec+f6b+gr217+nfs+a32+fuse23+tg+++opt+c8+gr2b-v6.194 #1 SMP martes 6 de junio 15:52:09 PDT 2006 i686 GNU/Linux

IIRC Utilicé solo –prefix flag.

  • posible duplicado de ImportError: ningún módulo llamado bz2 para Python 2.7.2

    – Abizerno

    13 de agosto de 2012 a las 8:53

Modulo bz2 de Python no compilado por defecto
alex martelli

Necesita libbz2.so (la biblioteca libbz2 de propósito general) correctamente instalada primero, para que Python pueda construir su propia interfaz. Por lo general, sería de un paquete en su distribución de Linux que probablemente tenga “libbz2” y “dev” en el nombre del paquete.

  • bzip2 y bzip2-devel al usar Yum en una distribución como Centos.

    – Fosco

    29 de agosto de 2011 a las 2:29

  • El paquete Debian se llama: libbz2-dev

    – pdoherty926

    25 de febrero de 2019 a las 15:37

Use la administración de paquetes de su proveedor para agregar el paquete que contiene los archivos de desarrollo para bz2. Suele ser un paquete llamado “libbz2-dev”. Por ejemplo, en Ubuntu

sudo apt-get install libbz2-dev

Modulo bz2 de Python no compilado por defecto
ricardo gomes

Hay 2 soluciones para este problema:

opción 1. instalar bzip2-devel

En Debian y derivados, puede instalar fácilmente así:

sudo apt-get install bzip2-devel

opción 2. construir e instalar bzip2

En el archivo README de paquete bzip2se explica que bajo ciertas plataformas, a saber, aquellas que emplean binarios de Linux-ELF, debe crear un archivo de objeto compartido adicional como se muestra a continuación:

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

El bit crítico aquí es el siguiente comando:

make -f Makefile-libbz2_so

Hice esto y luego traté de compilar Python nuevamente, como se muestra a continuación:

cd Python-2.7.3
./configure --prefix=/path/to/local 
make install

  • El archivo Léame dice make -f Makefile-libbz2_so en lugar de make -f Makefile_libbz2_so

    – mr2ert

    28 de junio de 2013 a las 23:10

  • No se puede localizar el paquete bzip2-devel (squeeze)

    – chovy

    13 de agosto de 2013 a las 7:41

  • @chovy: “apt-cache search bzip | fgrep dev”. Puedes probar “libbz2-dev”

    – Ricardo Gomes

    24 de agosto de 2013 a las 14:22


  • Hay un error aquí, si ha ejecutado makees necesario ejecutar make clean antes de intentar make -f Makefile-libbz2_so.

    – caray

    24 de agosto de 2015 a las 17:08

  • @hlin117 -fPIC es una bandera para el compilador, no una opción para make. Tienes que pasarlo como una variable de entorno de la siguiente manera: make -f Makefile-libbz2_so CFLAGS="-fPIC"

    – bli

    8 de febrero de 2017 a las 14:34

Si está intentando compilar Python en RHEL5, el paquete se llama bzip2-devely si tiene configurado RHN, puede instalarlo con este comando:

yum instalar bzip2-devel

Una vez hecho esto, no necesita ninguna de las opciones –enable-bz2 o –with-bz2, pero es posible que necesite –enable-shared.

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad