繁体   English   中英

Python distutils拒绝识别已安装的C ++编译器,“无法在Python 3.5下找到vcvarsall.bat”

[英]Python distutils refuses to recognise installed C++ compilers, `Unable to find vcvarsall.bat` under Python 3.5

我正在试图通过Python的distutils来编译c。 具体来说,我正在尝试按照本指南开始使用Cython: http ://docs.cython.org/src/quickstart/build.html,使用setup.py。

我在Anaconda 2.4.0(64位),Windows 7下运行Python 3.5.0。

我找到了Unable to find vcvarsall.bat这里提到的Unable to find vcvarsall.bat错误: 在运行Python脚本时遇到vcvarsall.bat以及其他各种问题。

所提出的解决方案都不适合我 到目前为止,我尝试过:

  • 安装Visual Studio - 我有从2008年到2013年的所有版本,即9.0,10.0,11.0和12.0。
  • 将与上述相关的环境变量(VS100COMNTOOLS等)直接指向正确的位置
  • 安装Microsoft Visual C ++ Compiler for Python(如上所述)。 这似乎工作,但我得到一个似乎不兼容的编译错误; 我认为因为编译器适用于Python 2.7。
  • Ravi Kumar在上述链接中建议更新pip的setuptools。 皮普给了我一个错误,说无法更新。
  • 安装MS Windows SDK for Windows 7和.NET Framework 4为https://github.com/cython/cython/wiki/CythonExtensionsOnWindows 最后一步失败,并显示当前未安装x64编译器的错误消息。

我唯一能想到的是安装MinGW,我已经在一些地方看到了建议,但CythonExtensionsOnWindows链接专门建议反对它。

任何其他建议将是非常受欢迎的! 特别是,因为我清楚地拥有了我可能需要的VS的所有版本,除了设置环境变量VS100COMNTOOLS或类似之外,有没有办法强制Python识别它们?

有趣的是康达似乎以识别安装的编译器,作为一个单独的PIP安装尝试与此相同的错误失败,与康达合作。

事实证明,Python 3.5需要Visual Studio 2015.其他地方为其他Python版本修复此问题的建议已经过时。

在这里获取Visual Studio 2015社区: https//www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx ,这对我有用,无需进一步的步骤。

非常感谢Ionel,显然是网上唯一能找到这些信息的地方! http://blog.ionelmc.ro/2014/12/21/compiling-python-extensions-on-windows/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM