执行以下命令时:
sudo pip install python-ldap
我得到这个错误:
在Modules/LDAPObject.c:9包含的文件中: Modules/errors.h:8:致命错误:lber.h:没有这样的文件或目录
有什么解决办法吗?
执行以下命令时:
sudo pip install python-ldap
我得到这个错误:
在Modules/LDAPObject.c:9包含的文件中: Modules/errors.h:8:致命错误:lber.h:没有这样的文件或目录
有什么解决办法吗?
当前回答
“不要盲目地删除/安装软件”
在基于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文件搜索lber.h的输出中看到的,您只需要安装包libldap2-dev。
sudo apt-get install libldap2-dev
其他回答
对于那些在Alpine Linux上丢失Iber.h的人,例如,在您试图适应Alpine的docker映像中。
您正在寻找的包是:openldap-dev
所以运行
Apk添加openldap-dev
从3.3版本到Edge版本均可用
适用于armhf和x86_64架构。
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
在Ubuntu中,它是这样的:
$ sudo apt-get install python-dev libldap2-dev libsasl2-dev libssl-dev
$ sudo pip install python-ldap
在FreeBSD 11中:
pkg install openldap-client # for lber.h
pkg install cyrus-sasl # if you need sasl.h
pip install python-ldap
sudo apt-get install build-essential python3-dev python2.7-dev libldap2-dev libsasl2-dev slapd ldap-utils python-tox lcov valgrind
Debian参考: https://www.python-ldap.org/en/latest/installing.html#debian 其他信息:https://www.python-ldap.org/en/latest/installing.html