执行以下命令时:

sudo pip install python-ldap

我得到这个错误:

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

有什么解决办法吗?


当前回答

在openSUSE上需要安装openldap2-devel、cyrus-sasl-devel、python-devel和libopenssl-devel。

Zypper安装openldap2-devel cyrus-sasl-devel python-devel libopenssl-devel

其他回答

在openSUSE上需要安装openldap2-devel、cyrus-sasl-devel、python-devel和libopenssl-devel。

Zypper安装openldap2-devel cyrus-sasl-devel python-devel libopenssl-devel

对于大多数系统,现在python-ldap文档中的“安装”部分提到了构建需求。

如果您的系统缺少任何东西(或者您的系统完全缺少),请让维护者知道! (截至2018年,我是维护者,所以这里的评论应该足够了。或者你可以发送一个请求或邮件。)

对于ArchLinux/Manjaro,为我提供了以下命令:

yay libldap24

添加libzbar-dev还解决了我在构建DOCKER时安装python-ldap的问题

完整命令变成:

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

在CentOS/RHEL 6上,您需要安装:

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

yum还将安装cyrus- sass -devel作为依赖项。然后你可以运行:

pip-2.7 install python-ldap