需要 Microsoft Visual C++ 10.0(无法找到 vcvarsall.bat)

3
我尝试在Windows 8.1上安装ephem模块,使用以下命令:
pip install ephem

但我遇到了这个错误:

需要 Microsoft Visual C++ 10.0 (无法找到 vcvarsall.bat)。

我正在使用 Python 3.4.3, 请告诉我应该怎么做才能解决这个问题。我尝试了很多解决方案,但都没有帮助我。

以下是其中的一些解决方案:

错误:需要 Microsoft Visual C++ 10.0 (无法找到 vcvarsall.bat)

Python Pip 安装错误:无法找到 vcvarsall.bat。尝试了所有解决方案


你试过从ephem包的网站下载可执行文件吗?Windows因这些问题而臭名昭著,在Windows上使用pip移动软件包有时会非常头疼,所以我放弃了,转而使用Anaconda作为软件包管理器,但通常情况下,在Windows上可执行文件运行良好,所以可以尝试一下。 - jfish003
你能给个链接吗? - user4988789
2个回答

4

我曾遇到同样的问题,并在此处找到了最佳解决方案:http://www.devdungeon.com/content/fix-pip-install-unable-find-vcvarsallbat

它说:

安装了Visual Studio 11、12和14,但没有安装10。上面的错误指定需要版本10。新版本应该同样有效,因此让我们告诉环境使用最新的编译器,而不是寻找版本10。在这种情况下,14是最新的版本。如果你看一下变量名的模式,你就可以确定版本10的名称应该是VS100COMNTOOLS。您可以使用以下命令将版本10变量设置为版本14的值:set VS100COMNTOOLS=%VS140COMNTOOLS%

因此,请转到命令窗口并运行以下命令:

set "VS100COMNTOOLS=%VS140COMNTOOLS%"

我希望它能帮助其他用户。


2
请注意,缺少引号的打印错误。正确的命令应该是: set "VS100COMNTOOLS=%VS140COMNTOOLS%" - Kyselejsyreček
解决方案相当hacky,但也适用于Windows 10和Visual Studio 2019。 - Gahan

3
我刚刚按照以下步骤成功通过pip安装了扩展。我在Windows 8.1 x64上工作。
  1. 使用x86安装程序安装最新的Python 3版本。(x64更难,因为VS不包括x64的编译器,请参见第二个答案here)
  2. 安装可以从Microsoft下载的Visual C++ Studio 2010 Express (请访问this链接,visual studio 2010下载链接在页面底部,您需要下载C++版本,我认为您必须在 Microsoft 注册才能下载软件)。
  3. 运行 py -3 -m pip install ephem 来安装ephem。(py -3 -m pip从你的Python 3安装中调用pip,如果你也安装了Python 2,这很有帮助)
对我来说没有任何问题,一切正常。
更新于2017年:
请查看以下包含有关在Windows上编译Python的信息的链接:

https://wiki.python.org/moin/WindowsCompilers


你如何具体下载2010 Express,因为Microsoft网站上只有升级版的2013? - user4988789
正如我在之前的帖子中所说,您必须查看页面底部。有一个名为“附加信息”的部分,在这个部分中有一个名为Visual Studio 2010 Express的标题。您将在此标题下找到正确的下载(Visual C++ 2010 Express)。 - Felix
是的!安装成功了!非常感谢! - user4988789
5
如果我已经安装了VS 13,我是否真的需要安装VS 2010呢? - Stupid_Intern

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接