执行以下命令时:

sudo pip install python-ldap

我得到这个错误:

在Modules/LDAPObject.c:9包含的文件中: Modules/errors.h:8:致命错误:lber.h:没有这样的文件或目录

有什么解决办法吗?


当前回答

在FreeBSD 11中:

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

其他回答

在Fedora 22上,您需要这样做:

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

Python -ldap基于OpenLDAP,因此需要有开发文件(头文件)才能编译Python模块。如果你用的是Ubuntu,这个包叫做libldap2-dev。

Debian/Ubuntu:

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

RedHat /被久远。

sudo yum install python-devel openldap-devel

对于那些在Alpine Linux上丢失Iber.h的人,例如,在您试图适应Alpine的docker映像中。

您正在寻找的包是:openldap-dev

所以运行

Apk添加openldap-dev

从3.3版本到Edge版本均可用

适用于armhf和x86_64架构。

在FreeBSD 11中:

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

如果你使用的是windows机器,你可以在这个链接中找到'python-ldap'轮,然后你可以安装它