【问题标题】:How to install python-ldap on a python 2.7 virtualenv on windows without compiling如何在不编译的情况下在 Windows 上的 python 2.7 virtualenv 上安装 python-ldap
【发布时间】:2013-04-10 06:05:53
【问题描述】:

我使用 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 包来安装它,但它将安装在全局 python 包中,不会在我的虚拟环境中!

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

更新: 我在系统范围内安装了 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: 在一个类似的问题 (Installing python-ldap in a virtualenv on Windows) 中,我发现了一个非常有趣的链接:http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap。在那里,您将能够找到 python-ldap 和许多其他人的 .EXE 安装包!!!所以最后通过下载这些你就可以在你的 virtualenv 中easy_install他们!

【问题讨论】:

  • 一种方法是在系统范围内安装它并使用“--system-site-packages”重新创建您的 virtualenv。
  • 是的,这可能会起作用 - 但我不想重新创建我的 virtualenv。
  • 尝试提取msi:msiexec.exe /a python-ldap-2.4.10.win32-py2.7.msi /qn TARGETDIR="C:\Absolute\Path".
  • @cgohlke 我认为你的解决方案是最好的 - 你能正确回答它以便我接受吗?谢谢!
  • 嗨@Cas,我真的不知道为什么会有差异。 egg-info ldap 都是需要的。无论如何,正如我在 Update 3 中所说,您应该从lfd.uci.edu/~gohlke/pythonlibs 下载python‑ldap‑2.4.15.win‑amd64‑py2.7.exe,然后只需执行easy_install python‑ldap‑2.4.15.win‑amd64‑py2.7.exe 即可安装它。

标签: python virtualenv easy-install python-ldap


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-25
    • 2018-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-17
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多