python - 在 Windows 中使用 pip

标签 python windows pip

我安装了 distributepip使用我刚刚给出的链接。我还安装了 Microsoft Visual C++ 2008 redistributable package .但是,当我尝试使用 pip.exe 时,我得到了

error: Unable to find vcvarsall.bat

我该如何解决这个问题?

最佳答案

安装 Microsoft Visual C++ 2008 Redistributable Package 不足以编译包。您需要安装一个编译器,而不仅仅是支持文件。

可以通过三种方式实现:

  1. 安装 Visual C++。
  2. 使用 mingw 的 gcc 端口而不是 Visual C++。
  3. 使用 cygwin 的 gcc 端口而不是其中任何一个,并使用基于 Python 而不是 native 构建的 cygwin。

如果您想使用选项 1,则需要安装 Visual C++ 本身。免费版本应该和付费版本一样好用,只要您不打算构建二进制包再分发给其他人。不幸的是,我不确定在哪里可以找到 2008 版本了。截至 2013 年 5 月,the download page只有 2010 年和 2012 年。

当你安装它时,它会创建一个名为 vcvarsall.bat 的批处理文件(不是 vcvarshall.bat!),并让你选择是否放置该批处理文件在你的路径中。运行该批处理文件会设置一个 DOS 提示符,以便使用该版本的 Visual C++ 进行构建。 (如果您有多个版本的 Visual C++ 或其他编译器,这会很方便。)如果您跳过该选项,则必须手动执行。

This question展示了如何将较新的 Visual Studio 与较旧的 Python 一起使用,还展示了如何将 distutils 指向不在您的 PATH 上的 vcvarsall.bat,并提供了指向大量其他相关问题和博客的链接帖子。


许多人发现选项 2 更简单。安装mingw ,修改环境中的 PATH 以包含 C:\MinGW\bin(或您选择安装它的任何位置),并在每次运行 时传递 -c mingw32 >setup.py 脚本。

问题是没有明确记录如何告诉 easy_installpip 使用 mingw 而不是 VC++。为此,您需要找到或创建一个 distutils.cfg 文件,在其中找到或创建一个 [build] 部分,然后添加 compiler=mingw32。不是太难。 This blog post看起来它很好地解释了事情,或者参见 this answer .


选项 3 是迄今为止最简单的。安装cygwin ,告诉它安装 Python 和 gcc 包,你就完成了。

问题是你没有原生的 Windows Python,你有一个 Unix Python 在 Windows 之上的假 Unix 环境中运行。如果你喜欢 Cygwin,你会喜欢这个;否则,你不会。

关于python - 在 Windows 中使用 pip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16551998/

相关文章:

python - 如何在Python中创建一个指定大小的文件?

python pandas 创建数据框并强制使用多种列类型

c++ - 问题 - TCHAR 作为 LPARAM 到属于另一个进程/线程的窗口

python - 如何找到我拥有的提交版本?

python - ReadTimeoutError/pip 未安装任何库

python - 为 pip 格式化 requirements.txt 文件,其中一个或多个包具有不同的索引 url

python - google app engine python 日志级降噪

python - 记录值可能有 unicode 错误的 python 字典

c - 为什么我在 Windows COM 端口上的串行读取限制为 8192 字节?

python - 在网络上的另一台计算机上启动进程