当前位置:  开发笔记 > 编程语言 > 正文

我无法安装python-ldap

如何解决《我无法安装python-ldap》经验,为你挑选了7个好方法。

当我运行以下命令时:

sudo pip install python-ldap

我收到此错误:

在Modules/LDAPObject.c:9中包含的文件中:

Modules/errors.h:8:致命错误:lber.h:没有这样的文件或目录

任何想法如何解决这一问题?



1> AndiDog..:

该网站称python-ldap基于OpenLDAP,因此您需要拥有开发文件(标题)才能编译Python模块.如果您使用的是Ubuntu,则会调用该程序包libldap2-dev.

Debian/Ubuntu:

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

RedHat/CentOS:

sudo yum install python-devel openldap-devel


@VacuumTube:缺少标题几乎总是缺少`-dev`包的标志(有时也称为`-devel`).只需执行`apt-cache search sasl | grep dev`你可能会找到合适的包 - 我猜它是`libsasl2-dev`.
Windows用户的任何东西:(同样的错误,到目前为止没有解决方案
您不必在Windows上从源代码编译.只需使用https://pypi.python.org/pypi/python-ldap/中的一个安装程序即可.
此外,Windows用户可以提取安装到virtualenv中的.msi安装程序@Semmel:[如何在不编译的Windows上的python 2.7 virtualenv上安装python-ldap](http://stackoverflow.com/questions/15918188/how -to-install-python-ldap-on-a-python-2-7-virtualenv-on-windows-without-compili)(参见更新2)
感谢那.它进一步说它现在失败了sasl.h没有这样的文件或目录

2> jmu..:

要使用pip成功安装python-ldap,需要以下开发库(从ubuntu环境获取的包名):

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



3> Banjer..:

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

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

和yum也将cyrus-sasl-devel作为依赖项安装.然后你可以运行:

pip-2.7 install python-ldap



4> Jeff Sheffie..:

在Ubuntu中它看起来像这样:

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



5> archangel76..:

Windows:我完全同意接受的答案,但仔细阅读评论需要一段时间才能得到我需要的东西.我使用Bitnami在Windows上使用Reviewboard遇到了这个特定问题.为了给出Windows的答案,我使用了评论中提到的这个链接:

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

将该轮(whl文件)放入我的reviewboard安装目录

然后,执行以下命令

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

(因为我有python 2.7和32位安装)

easy_install python-ldap


/sf/ask/17360801/

6> Gayan Weerak..:

"不要盲目删除/安装软件"

在基于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.h,您只需安装该软件包即可libldap2-dev.

sudo apt-get install libldap2-dev



7> Ilhicas..:

对于那些在Alpine Linux上遇到Iber.h相同问题的人来说,在你试图适应Alpine的码头图像中.

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

所以跑

apk add openldap-dev

可从3.3版到Edge版

适用于armhf和x86_64架构.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有