para python module ldap

python ldap para windows



No puedo instalar python-ldap (15)

"No quitar / instalar software a ciegas"

En una distribución basada en Ubuntu / Debian, podría usar apt-file para encontrar el nombre del paquete exacto que incluye el archivo de encabezado faltante.

# do this once sudo apt-get install apt-file sudo apt-file update

$ apt-file search lber.h libldap2-dev: /usr/include/lber.h

Como puede ver en la salida de apt-file search lber.h , solo necesita instalar el paquete libldap2-dev .

sudo apt-get install libldap2-dev

Cuando ejecuto el siguiente comando:

sudo pip install python-ldap

Me sale este error:

En el archivo incluido de Módulos / LDAPObject.c: 9:

Módulos / errores.h: 8: error fatal: lber.h: No existe tal archivo o directorio

Alguna idea de cómo solucionar este problema?


Como solución general para instalar paquetes de Python con dependencias binarias [1] en Debian / Ubuntu:

sudo apt-get build-dep python-ldap # installs system dependencies (but not the package itself) pew workon my_virtualenv # enter your virtualenv pip install python-ldap

Tendrá que verificar el nombre de su paquete Python en Ubuntu versus PyPI. En este caso son los mismos.

Obviamente, no funciona si el paquete Python no está en los repositorios de Ubuntu.

[1] Aprendí este truco al tratar de pip install matplotlib en Ubuntu.


El website dice que python-ldap se basa en OpenLDAP, por lo que necesita tener los archivos de desarrollo (encabezados) para compilar el módulo de Python. Si estás en Ubuntu, el paquete se llama libldap2-dev .

Debian / Ubuntu :

sudo apt-get install libsasl2-dev python-dev libldap2-dev libssl-dev

RedHat / CentOS :

sudo yum install python-devel openldap-devel


En CentOS / RHEL 6, necesita instalar:

sudo yum install python-devel sudo yum install openldap-devel

y yum también instalará cyrus-sasl-devel como una dependencia. Entonces puedes correr:

pip-2.7 install python-ldap


En Fedora 22, debes hacer esto en su lugar:

sudo dnf install python-devel sudo dnf install openldap-devel


En FreeBSD 11:

pkg install openldap-client # for lber.h pkg install cyrus-sasl # if you need sasl.h pip install python-ldap


En OSX, necesita las herramientas CLI de xcode. Solo abre una terminal y ejecuta:

xcode-select --install


En Ubuntu se ve así:

$ sudo apt-get install python-dev libldap2-dev libsasl2-dev libssl-dev $ sudo pip install python-ldap


En openSUSE necesitas instalar los paquetes openldap2-devel , cyrus-sasl-devel , python-devel y libopenssl-devel .

zypper install openldap2-devel cyrus-sasl-devel python-devel libopenssl-devel


Para aquellos que tienen el mismo problema de que falta Iber.h en Alpine Linux, en una imagen docker que intenta adaptar a Alpine, por ejemplo.

El paquete que está buscando es: openldap-dev

Asi que corre

apk add openldap-dev

Disponible desde la versión 3.3 hasta Edge

Disponible para arquitecturas armhf y x86_64.


Para instalar python-ldap correctamente con pip, se necesitan las siguientes bibliotecas de desarrollo (nombres de paquetes tomados del entorno de ubuntu):

sudo apt-get install -y python-dev libldap2-dev libsasl2-dev libssl-dev


Para la mayoría de los sistemas , los requisitos de compilación ahora se mencionan en la documentación de python-ldap , en la sección "Instalación".

Si falta algo en su sistema (o si falta por completo), ¡infórmeselo al mantenedor! (A partir de 2018, soy el mantenedor, por lo que un comentario aquí debería ser suficiente. O puede enviar una solicitud de extracción o un correo electrónico).


Si está trabajando con máquinas Windows, puede encontrar la rueda ''python-ldap'' en este Link y luego puede instalarla.


Windows: Estoy completamente de acuerdo con la respuesta aceptada, pero investigar los comentarios tomó un tiempo para llegar a la carne de lo que necesitaba. Me encontré con este problema específico con Reviewboard en Windows utilizando Bitnami. Para dar una respuesta para Windows, utilicé este enlace mencionado en los comentarios:

Luego, ejecutamos los siguientes comandos.

easy_install pip pip install python_ldap-2.4.20-cp27-none_win32.whl

(porque tenía Python 2.7 y una instalación de 32 bits en eso)

easy_install python-ldap


python3 no soporta python-ldap. En lugar de instalar ldap3.