如何在windows的python 2.7虚拟环境中安装python-ldap而无需编译



我使用Windows作为我的主要python 2.7开发环境,我想在虚拟环境中安装python-ldap。

python-ldap包需要编译:(当然我不能在我的环境中编译它。所以我试着找到二进制文件,以便通过easy_install在我的虚拟环境中安装它们(仅供参考,您可以执行easy_install package.exe,该包将被安装)。我在这里找到了分布式二进制文件:https://pypi.python.org/pypi/python-ldap/

不幸的是,他们只给python 2.7 .msi包!!为什么人们使用。msi ?不能通过easy_install安装MSI。我讨厌MSI %$#$^#$^#$

是的,我可以通过执行。msi包来安装它,但它将安装在全局python包和中,而不是在我的虚拟环境中 !

请问,有人能帮帮我吗?我记得我在之前的一个项目中遇到过这个问题,我不得不在虚拟环境之外开发它——但我现在不能这样做了:(

Update:我在系统范围内安装了python-ldap并复制了目录Ldap和python_ldap-2.4.10-py2.7。egg-info从PYTHON_GLOBALLibsite-packages到VIRTUALENVLibsite-packages,现在似乎正在工作。但是我真的不喜欢这个解决方案,所以我不会用这个来回答我的问题。此外,Alexander关于用——system-site-packages重新创建我的虚拟环境的评论可能会起作用,但这意味着我需要卸载很多全局包,然后重新安装我的虚拟包等,总的来说它不是DRY:(

Update 2:在尝试cgohlke的建议后,我看到MSI的内容是我上面提到的两个目录以及文件dsml.py, ldapurl.py和lddif .py。所以我也把它复制到我的VIRTUALENVLibsite-packages。现在我相信安装是ok的:)。但我相信cgohlke的是最好的-只需使用msiexec.exe将msi的内容直接提取到您的VIRTUALENV。

更新3:在类似的问题(在Windows上的虚拟环境中安装python-ldap)我发现了一个非常有趣的链接:http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap。在那里你将能够找到。exe安装包python-ldap和许多其他的!!所以最后,通过下载这些,你就可以在你的虚拟环境中easy_install它们了!

在系统范围内安装它,从已安装的文件创建一个egg,然后在您的虚拟环境中使用该egg怎么样?你可以在这里找到一些关于鸡蛋结构的信息:http://pythonhosted.org/setuptools/formats.html

最新更新