Beheben Sie den GCC-Fehler bei der Installation von Python-ldap auf Redhat Enterprise Server

8

Python-LDAP + Redhat = Zähneknirschen

Vor kurzem habe ich ein paar Stunden damit verbracht, meine Haare (oder was davon übrig ist) zu zerreißen, indem ich versuche, python-ldap (via pip) auf einem Redhat Enterprise Server zu installieren.

Hier ist die Fehlermeldung, die ich bekommen würde (vertraut?):

Modules/constants.c:365: error: ‘LDAP_CONTROL_RELAX’ undeclared (first use in this function) error: command 'gcc' failed with exit status 1

Wenn da nur jemand da wäre, der mir helfen könnte!

    
eikonomega 12.09.2013, 14:24
quelle

2 Antworten

17

Aber warte! Ich kann dir helfen, weil ich es nach viel Fluchen herausgefunden habe!

Schritt 1: Überprüfen Sie, ob die Voraussetzungen installiert sind

Gemäß den Dokumenten müssen auf Ihrem System OpenLDAP-Bibliotheken installiert sein. Zu dem Zeitpunkt, als ich die Versionsanforderung für die Bibliotheken schrieb, war & gt; = 2.4.11

Um zu sehen, ob solche Bibliotheken auf Ihrem System installiert sind oder nicht, führen Sie folgenden Befehl aus: yum list installed openldap*

Hier ist die Ausgabe von meinem System als ein Beispiel für was Sie sehen könnten:

%Vor%

In meinem Fall waren die Bibliotheken bereits installiert. Wenn Sie nicht nur Folgendes ausführen:

%Vor%

Schritt 2: Wo wurden diese Pakete installiert?

Wenn die Pakete bereits installiert sind und pip immer noch fehlschlägt, sucht das Skript setup.cfg möglicherweise an den falschen Stellen nach den erforderlichen Bibliotheksdateien. Also, lasst uns herausfinden, wo Sie existieren auf unserem System.

Mach das:

%Vor%

Und Sie sollten so etwas bekommen (ich habe das abgekürzt, damit wir die beteiligten Verzeichnisse leichter sehen können).

%Vor%

Schritt 3: Überprüfen Sie Pips setup.cfg-Datei für python-ldap

  • Wenn ein Pip-Installationsbefehl fehlschlägt, wird ein build -Verzeichnis innerhalb des Basisverzeichnisses des Python-Interpreters hinterlassen (an derselben Stelle wie / bin, / include, / lib und / man.
  • )
  • Im build -Verzeichnis sollten Sie 'python-ldap / setup.cfg' finden.
  • Öffnen Sie die Datei in Ihrem bevorzugten Editor.

Sie sollten dies am Anfang der Datei sehen:

%Vor%

Offensichtlich ist das falsch. Fügen Sie die Verzeichnisse, die Sie in Schritt 2 gefunden haben, vor der derzeit aufgelisteten Verzeichnisse an, so dass Sie etwa folgendes erhalten:

%Vor%

Schritt 4: Installation erneut ausführen & amp; PROFIT!

Nach dem Speichern der Datei können Sie einfach pip install python-ldap erneut ausführen. Der Installationsprozess wird Ihr Update setup.cfg betrachten und sollte ohne weitere Probleme installiert werden.

    
eikonomega 12.09.2013, 14:24
quelle
3

Eine Alternative zu Schritt 3 in eikonomegas Antwort :

%Vor%

dann:

%Vor%

Sie müssen die setup.cfg nicht knacken!

    
Jabberwocky 25.01.2015 00:45
quelle

Tags und Links