我使用 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 ? MSI 无法通过 easy_install 安装。我讨厌 MSI%$#$^#$^#$
是的,我可以通过执行来安装 .msi 包,但它将安装在全局 python 包中,并且not在我的虚拟环境中!
请问有人可以帮助我吗?我记得在之前的项目中遇到过这个问题,我必须在虚拟环境之外开发它 - 但我现在不能这样做:(
Update:我在系统范围内安装了 python-ldap 并复制了目录
ldap 和 python_ldap-2.4.10-py2.7.egg-info 从 PYTHON_GLOBAL\Lib\site-packages 到 VIRTUALENV\Lib\site-packages ,似乎现在正在工作。但是我真的不喜欢这个解决方案,所以我不会用它来回答我的问题。另外,亚历山大关于使用 --system-site-packages 重新创建我的 virtualenv 的评论可能会起作用,但这意味着我需要卸载很多全局包,然后再次安装我的虚拟包等,一般来说它不是干燥的 :(
更新2:在尝试了 cgohlke 的建议后,我看到 MSI 的内容是我上面提到的两个目录以及文件 dsml.py、ldapurl.py 和 ldif.py。所以我也将其复制到我的 VIRTUALENV\Lib\site-packages 中。现在我相信安装没问题了:)。但我相信 cgohlke 是最好的 - 只需使用 msiexec.exe 将 msi 的内容直接提取到您的 VIRTUALENV 中。
更新3:在类似的问题中(在 Windows 上的 virtualenv 中安装 python-ldap)我发现了一个非常有趣的链接:http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap。在那里你将能够找到 python-ldap 和很多其他的 .EXE 安装包!所以最后通过下载这些你将能够easy_install
它们在你的虚拟环境中!