7

尝试为我的 Django 项目安装 python-ldap - 到目前为止尝试了 easy_install、pip 以及构建自己,但仍然遇到相同的错误:

dlopen(/Library/Python/2.6/site-packages/_ldap.so, 2): Symbol not found: _ldap_create_assertion_control_value
Referenced from: /Library/Python/2.6/site-packages/_ldap.so
Expected in: flat namespace
in /Library/Python/2.6/site-packages/_ldap.so

这是怎么回事?

4

4 回答 4

7

pip install python-ldap==2.3.13 对我有用(Mac OS X 10.6)

于 2011-08-03T11:26:35.810 回答
7

此处记录了问题和解决方案。

摘要:10.7.{0,1} 系统工具和标头均来自 OpenLDAP 2.4.x,而库来自 OpenLDAP 2.2.0。解决方案是构建 OpenLDAP 库以匹配系统标头并将 python-ldap 与那些链接。

所有功劳归于 Rob McBroom

于 2011-08-19T17:22:52.370 回答
2

easy_install我在 10.7 (Lion) 下使用and遇到了同样的错误pip。手动安装 2.3.13 也是那里的答案。

于 2011-07-28T12:46:00.210 回答
1

我必须修改 setup.cfg 才能让它在 OS X 上运行。这就是我所做的:

wget http://python-ldap.cvs.sourceforge.net/viewvc/python-ldap/?view=tar --output-document=python-ldap.tar.gz
tar xvf python-ldap.tar.gz
cd python-ldap

修改 setup.cfg 中的以下行:

library_dirs = /usr/local/lib
include_dirs = /usr/local/include /usr/include/sasl
libs = ldap lber sasl2 ssl crypto

然后继续“正常”安装:

python setup.py build
sudo python setup.py install
于 2011-06-27T16:48:01.530 回答