2011-06-30 52 views

回答

2

在Mac OS X上安装带有C扩展模块的Python包时,Python将自动使用构建解释器的SDK和部署目标。据推测,你使用的只是一个32位Python,可能来自一个python.org安装程序。这些Pythons使用10.4u SDK构建,以便与旧系统兼容。如果您使用的是Xcode 3,则缺省情况下未安装10.4u SDK,但您可以运行Xcode 3安装程序并将其选中。如果你使用的是Xcode 4,你可能不太好运,因为它不包含10.4u SDK(或者我理解)。您可以从python.org安装更新的64位/ 32位10.6-only Python 2.7,也可以使用Apple提供的Python 2.6(/usr/bin/python2.6)。

+0

事情是我不想使用10.4u,因为它附带的ldap.h文件不包含python-ldap所需的常量。该常数仅在10.6附带的文件中找到。 – elbear

+0

安装的确使用了来自/ Library/Frameworks的Python。我将如何使用/usr/bin/python2.6,并且这会引起其他更改吗? – elbear

+1

由于您似乎在使用'pip',因此您应该可以通过使用'-E'选项来告诉'pip'使用不同的Python。像这样的东西应该工作:'pip -E /usr/bin/python2.6安装python-ldap'。你可能需要在它之前加上'sudo'。否则,您可以使用苹果提供的'easy_install'作为系统Python:'/usr/bin/easy_install-2.6 -Z python-ldap' –

相关问题