执行以下命令时:
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:没有这样的文件或目录
有什么解决办法吗?
当前回答
对于ArchLinux/Manjaro,为我提供了以下命令:
yay libldap24
其他回答
在Fedora 22上,您需要这样做:
sudo dnf install python-devel
sudo dnf install openldap-devel
对FreeBSD 13.1的一个hack答案(是的,我知道这是最佳实践的深层南方,但我只是需要一个快速修复):
pkg install openldap24-client
cd /usr/local/include/python3.9
ln -s ../<all of the below> .
lber.h
lber_types.h
ldap.h
ldap_cdefs.h
ldap_features.h
ldap_schema.h
ldap_utf8.h
openldap.h
sasl
pip install python-ldap
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
Windows:我完全同意这个公认的答案,但我花了一段时间才从评论中找到我想要的东西。我使用Bitnami在Windows上的Reviewboard遇到了这个特定的问题。为了给出windows的答案,我使用了评论中提到的这个链接:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap 将该车轮(whl文件)放入我的审查板安装目录
然后执行如下命令
easy_install pip
pip install python_ldap-2.4.20-cp27-none_win32.whl
(因为我安装了python 2.7和32位)
easy_install python-ldap
要用pip成功安装python-ldap,需要以下开发库(包名取自ubuntu环境):
sudo apt-get install -y python-dev libldap2-dev libsasl2-dev libssl-dev