python-ldap을 설치할 수 없습니다


265

다음 명령을 실행할 때 :

sudo pip install python-ldap

이 오류가 발생합니다.

Modules / LDAPObject.c : 9에 포함 된 파일에서 :

모듈 /errors.h:8 : 치명적인 오류 : lber.h : 해당 파일 또는 디렉토리 없음

이 문제를 해결하는 방법에 대한 아이디어가 있습니까?


1
이것이 내가 그것을 위해 고친 방법입니다. 나는 아마존 EC2 인스턴스에 그리고 난 내 들어갔다 usr/bin/디렉토리와 내가 가진 눈치 pip, pip-2.7, pip-3.6, and pip-python내가했던, 그래서 sudo pip-3.6 install ldap3그것이 나를 위해 일했습니다.
Kyle Bridenstine 2016 년

1
@KyleBridenstine python-ldap은 ldap3과 동일 하지 않습니다 .
David Mulder

답변:


427

파이썬 - LDAP는 당신이 파이썬 모듈을 컴파일하기 위해 개발 파일 (헤더)이 필요하므로, OpenLDAP를 기반으로합니다. Ubuntu를 사용하는 경우 패키지는 libldap2-dev입니다.

데비안 / 우분투 :

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

RedHat / CentOS :

sudo yum install python-devel openldap-devel

2
고마워 더 나아가 지금 sasl.h 그런 파일이나 디렉토리에 실패한 것있어
VacuumTube

68
@VacuumTube : 누락 된 헤더는 거의 항상 누락 된 -dev패키지 (때로는이라고도 함 -devel)의 표시입니다. 그냥 apt-cache search sasl | grep dev하고 당신은 아마 올바른 패키지를 찾을 수 있습니다-나는 것 같아요 libsasl2-dev.
AndiDog

5
Windows 사용자를위한 모든 것 :( 같은 오류, 지금까지 해결책이 없음
Shailen

4
Windows의 소스에서 컴파일 할 필요는 없습니다. pypi.python.org/pypi/python-ldap 의 설치 프로그램 중 하나를 사용하십시오 .
Semmel

3
또한 Windows 사용자는 virtualenv에 설치하기 위해 언급 한 @Semmel .msi 설치 관리자를 추출 할 수 있습니다. 컴파일하지 않고 Windows에서 2.7 virtualenv를 python에 설치하는 방법 (업데이트 2 참조)
Dave

143

pip로 python-ldap를 성공적으로 설치하려면 다음 개발 라이브러리가 필요합니다 (우분투 환경에서 가져온 패키지 이름).

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

감사. 이것이 당신이 필요한 전부입니다. 다음 실행sudo pip install python-ldap
Sudipta Basak

71

CentOS / RHEL 6에서는 다음을 설치해야합니다.

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

yum은 또한 cyrus-sasl-devel의존성으로 설치 될 것 입니다. 그런 다음 다음을 실행할 수 있습니다.

pip-2.7 install python-ldap

32

우분투에서는 다음과 같이 보입니다 :

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

15

Windows : 나는 받아 들인 대답에 전적으로 동의하지만 의견을 파헤 치려면 내가 필요한 것의 고기를 얻는 데 시간이 걸렸습니다. Bitnami를 사용하여 Windows의 Reviewboard 에서이 특정 문제를 겪었습니다. 그런 다음 창에 대한 답변을 제공하기 위해 주석에 언급 된이 링크를 사용했습니다.

그런 다음 다음 명령을 실행하십시오.

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

(파이썬 2.7과 32 비트 설치가 있었기 때문에)

easy_install python-ldap


12

"맹목적으로 소프트웨어를 제거 / 설치하지 마십시오"

Ubuntu / Debian 기반 배포판 apt-file에서 누락 된 헤더 파일이 포함 된 정확한 패키지의 이름을 찾는 데 사용할 수 있습니다 .

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

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

의 출력에서 ​​알 수 있듯이 apt-file search lber.hpackage 만 설치하면됩니다 libldap2-dev.

sudo apt-get install libldap2-dev

2
이것은 정말로 맨 위에 있어야합니다. 매우 도움이됩니다.
Bobort

이것과 동등한 CentoOS가 있습니까?
Tomislav Urban

11

Alpine Linux에서 Iber.h가 누락 된 것과 동일한 문제가있는 경우 예를 들어 Alpine에 적응하려는 도커 이미지.

찾고있는 패키지는 다음과 같습니다. openldap-dev

그래서 실행

apk add openldap-dev

버전 3.3에서 Edge까지 사용 가능

armhf 및 x86_64 아키텍처 모두에 사용할 수 있습니다.


알파인 기반 이미지에 적합합니다. 감사.
rozacek

4

오픈 수세에서 당신은 패키지를 설치해야 openldap2-devel, cyrus-sasl-devel, python-devellibopenssl-devel.

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


4

Fedora 22에서는 대신 다음을 수행해야합니다.

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

F25의 경우에도 마찬가지
Jerther

2

OSX에서는 xcode CLI 도구가 필요합니다. 터미널을 열고 다음을 실행하십시오.

xcode-select --install

2

의 경우 대부분의 시스템 빌드 요구 사항은 지금에 언급 된 파이썬 - LDAP의 문서 은 "설치"섹션에서.

시스템에 누락 된 것이 있거나 시스템이 완전히 누락 된 경우 관리자에게 알려주십시오! (2018 년 현재, 저는 관리자입니다. 여기에 의견이 충분해야합니다. 또는 풀 요청이나 메일을 보낼 수도 있습니다.)


고맙습니다, python3을 실행하는 경우 python-devel 대신 python3-devel이 필요하다는 점에 주목할 가치가 있습니다.
Jamie


2

python-ldap 설치 종속성으로 인한 오류를 해결하려면 Windows 7/10

whl 파일을 다운로드하십시오

http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap .

파이썬 3.6 슈트

python_ldap-3.2.0-cp36-cp36m-win_amd64.whl

파일을 다음 위치에 배포하십시오.

c : \ python36 \ 스크립트 \

함께 설치

python -m pip install python_ldap-3.2.0-cp36-cp36m-win_amd64.whl

1

FreeBSD 11에서 :

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

1

데비안 / 우분투에서 바이너리 의존성을 가진 파이썬 패키지를 설치하는 일반적인 솔루션으로 :

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

Ubuntu 와 PyPI 의 Python 패키지 이름 을 확인해야합니다 . 이 경우에는 동일합니다.

파이썬 패키지가 우분투 저장소에 없으면 작동하지 않습니다.

[1] pip install matplotlib우분투에서 할 때이 트릭을 배웠습니다 .


1

알파인 도커

apk add openldap-dev

파이썬 버전이 3 이상인 경우 시도하십시오

pip install python3-ldap

0

Windows 컴퓨터로 작업하는 경우이 링크 에서 'python-ldap'휠을 찾은 다음 설치할 수 있습니다



당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.