353 Stimmen

Ich kann python-ldap nicht installieren

Wenn ich den folgenden Befehl ausführe:

sudo pip install python-ldap

Ich erhalte diesen Fehler:

In der Datei enthalten von Modules/LDAPObject.c:9:

Modules/errors.h:8: fataler Fehler: lber.h: Keine solche Datei oder Verzeichnis

Haben Sie eine Idee, wie man das beheben kann?

17voto

archangel76 Punkte 1524

Fenster: Ich stimme mit der akzeptierten Antwort völlig überein, aber es hat eine Weile gedauert, sich durch die Kommentare zu wühlen, um zum Kern dessen zu gelangen, was ich brauchte. Ich stieß auf dieses spezifische Problem mit Reviewboard unter Windows mit dem Bitnami. Um eine Antwort für Windows dann zu geben, habe ich diesen Link in den Kommentaren erwähnt:

Führen Sie dann die folgenden Befehle aus

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

(weil ich Python 2.7 und eine 32bit-Installation hatte)

easy_install python-ldap

14voto

Ilhicas Punkte 1331

Für diejenigen, die das gleiche Problem der fehlenden Iber.h auf Alpine Linux, in einem Docker-Image, das Sie versuchen, auf Alpine zum Beispiel anzupassen.

Das Paket, das Sie suchen, ist: openldap-dev

Also laufen

apk add openldap-dev

Verfügbar ab Version 3.3 bis Edge

Verfügbar für armhf und x86_64 Architekturen.

7voto

Ich hatte Probleme mit der Installation unter Windows, daher ist eine der Lösungen die Installation des ldap Paket manuell.

Ein paar Schritte:

  • Gehen Sie zur Seite pyldap oder/und python-ldap und laden Sie die neueste Version herunter *whl .
  • Öffnen Sie eine Konsole und wechseln Sie zu dem Ort, an dem Sie Ihre Datei heruntergeladen haben, z. B. some-package.whl und verwenden:

    pip install some-package.whl

Die aktuelle Version für pyldap es 2.4.45 . Bei einem konkreten Beispiel würde die Installation so aussehen:

pip install .\pyldap-2.4.45-cp37-cp37m-win_amd64.whl

# or
pip install .\python_ldap3.3.1cp39cp39win_amd64.whl

Ausgabe:

Installing collected packages: pyldap
Successfully installed pyldap-2.4.45

EDIT

Sie können die richtige Version für Python-3.X installieren, indem Sie den folgenden Befehl verwenden:

# if pip3 is the default pip alias for python-3
pip3 install python3-ldap

# otherwise 
pip install python3-ldap

Hier ist auch der Link zum PiPy-Paket für weitere Informationen: python3-ldap 0.9.8.4

OR

ldap3 ist eine streng RFC 4510 konforme LDAP V3 reine Python Client Bibliothek. Die gleiche Codebasis läuft in Python 2, Python 3, PyPy und PyPy3: https://github.com/cannatag/ldap3

pip install ldap3

from ldap3 import Server, Connection, SAFE_SYNC

server = Server('my_server')
conn = Connection(server, 'my_user', 'my_password', client_strategy=SAFE_SYNC, auto_bind=True)

status, result, response, _ = conn.search('o=test', '(objectclass=*)') 
# usually you don't need the original request (4th element of the returned tuple)

6voto

chfw Punkte 4382

Unter Fedora 22 müssen Sie dies stattdessen tun:

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

5voto

Akhilraj N S Punkte 8641

Für alpine Docker

apk add openldap-dev

wenn die Python-Version 3 und höher ist, versuchen Sie

pip install python3-ldap

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X