在Windows上在虚拟环境中安装python-ldap

9 投票
2 回答
16750 浏览
提问于 2025-04-17 17:03

我正在做一个Django项目,这个项目使用了ldap认证模块。在我们的服务器上这个模块运行得很好,但我在我的Windows开发机器上遇到了一些问题,无法让它正常工作。

我的环境是使用virtualenv的,当我尝试安装pip的python-ldap时,收到了以下信息:

error: Unable to find vcvarsall.bat

有没有人知道可能出了什么问题吗?

2 个回答

34

为了更详细地说明@Brandon的回答,下面是使用预先构建好的轮子(wheel)进行安装的步骤:

  1. 首先,确保你安装了pip 19.2或更高版本:

    $ pip --version
    pip 19.2.3
    

    为了保险起见,可以升级一下:

    $ python -m pip install -upgrade pip
    
  2. 检查一下你的Python版本和系统架构(32位或64位) https://stackoverflow.com/a/10966396/1026:

    $ python -c 'import sys; print(sys.version)'
    3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)]
    

    或者查看pip报告的“兼容标签”:

    python -m pip debug --verbose
    
  3. https://github.com/cgohlke/python-ldap-build/releases 下载与之匹配的预构建 *.whl 文件。

    例如,假设你的Python版本是上面的,我选择了“python_ldap‑3.2.0‑cp37‑cp37m‑win_amd64.whl”这个文件。

  4. 然后用以下命令安装它:

     pip install path\to\your.whl
    
16

很遗憾,很多Python模块在Windows上安装时会遇到问题。你遇到的这个错误,我自己也一直没能解决,尽管网上有很多信息可以参考。你可以试试这个链接,里面有预编译好的版本:http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-ldap

撰写回答