Python安装编译错误

时间:2017-03-13 06:08:53

标签: python c++ visual-studio installation visual-studio-2017

我希望有人可以帮助我,因为我已经坚持了一段时间,而且我对编译软件包不是很熟悉。尝试安装以下软件包:https://github.com/jhkorhonen/MOODS/wiki/Installation

运行Python 3.5(Anaconda),Windows 10 64位,Microsoft Visual Studio 2017社区版。这是我到目前为止所做的。

  • 错误1:cd修改了解压缩的软件包位置,并运行python setup.py install --user,但收到错误消息:

    running install running build running build_py running build_ext building 'MOODS._tools' extension cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Icore/ -IC:\Users\Wolf\Anaconda3\include -IC:\Users\Wolf\Anaconda3\include /EHsc /Tpcore/tools_wrap.cxx /Fobuild\temp.win-amd64-3.5\Release\core/tools_wrap.obj -march=native -O3 -fPIC --std=c++11 error: command 'cl.exe' failed: No such file or directory

  • 解决方案1:结果C:\Program Files (x86)\Microsoft Visual Studio 14.0没有找到的\VC文件夹,但我确实在C:\Program Files (x86)\Microsoft Visual Studio\Shared\14.0\VC\bin找到了,所以我将其添加到{{ 1}}。

然后是另一个错误:

  • 错误2:PATH
  • 解决方案2:所以我添加了一个环境变量C:\Program Files (x86)\Microsoft Visual Studio\Shared\14.0\VC\bin\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Icore/ -IC:\Users\Wolf\Anaconda3\include -IC:\Users\Wolf\Anaconda3\include /EHsc /Tpcore/tools_wrap.cxx /Fobuild\temp.win-amd64-3.5\Release\core/tools_wrap.obj -march=native -O3 -fPIC --std=c++11 cl : Command line warning D9002 : ignoring unknown option '-march=native' cl : Command line warning D9002 : ignoring unknown option '-O3' cl : Command line warning D9002 : ignoring unknown option '-fPIC' cl : Command line warning D9002 : ignoring unknown option '--std=c++11' tools_wrap.cxx c:\users\wolf\anaconda3\include\pyconfig.h(68): fatal error C1083: Cannot open include file: 'io.h': No such file or directory error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\14.0\\VC\\bin\\cl.exe' failed with exit status 2并进行设置 到INCLUDEC:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\ucrt

然而,还有一个错误:

io.h

我不知道如何解决这个问题。似乎向C:\Program Files (x86)\Microsoft Visual Studio\Shared\14.0\VC\bin\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Icore/ -IC:\Users\Wolf\Anaconda3\include -IC:\Users\Wolf\Anaconda3\include "-IC:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\ucrt" /EHsc /Tpcore/tools_wrap.cxx /Fobuild\temp.win-amd64-3.5\Release\core/tools_wrap.obj -march=native -O3 -fPIC --std=c++11 cl : Command line warning D9002 : ignoring unknown option '-march=native' cl : Command line warning D9002 : ignoring unknown option '-O3' cl : Command line warning D9002 : ignoring unknown option '-fPIC' cl : Command line warning D9002 : ignoring unknown option '--std=c++11' tools_wrap.cxx C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\ucrt\corecrt.h(10): fatal error C1083: Cannot open include file: 'vcruntime.h': No such file or directory error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\14.0\\VC\\bin\\cl.exe' failed with exit status 2添加内容并不能帮助很多事情。也许它与Universal CRT的推出有关?我应该只卸载Visual Studio 2017并使用旧版本吗?

2 个答案:

答案 0 :(得分:12)

我在运行Python 3.5(Anaconda),Windows 10 64bit,Microsoft Visual Studio 2017专业版时遇到了类似的问题。

您是否尝试在命令行上启用64位Visual C ++工具集? 为此,请先在命令行上运行vcvars64.bat。 就我而言,本地化是:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build

这对我来说足够了,解决了我的问题。

此外,我看到一些用户必须install "Windows Universal CRT SDK"(我已经拥有它)。检查你是否也有:

  1. 运行Visual Studio Installer。
  2. 选择修改按钮。
  3. 转到"个别组件"标签。
  4. 向下滚动到"编译器,构建工具和运行时"。
  5. Tick" Windows Universal CRT SDK"。
  6. 安装。
  7. PS:为方便起见,我建议使用PowerShell。用于从here设置vcvars64.bat示例的脚本:

    pushd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\"
    cmd /c "vcvars64.bat&set" |
    foreach {
      if ($_ -match "=") {
        $v = $_.split("="); set-item -force -path "ENV:\$($v[0])"  -value "$($v[1])"
      }
    }
    popd
    Write-Host "`nVisual Studio 2017 Command Prompt variables set." -ForegroundColor Yellow
    

答案 1 :(得分:1)

您还可以独立下载并安装window 10 sdk

使用此链接,希望它可以解决问题。

第二次尝试使用Visual Studio命令提示符(例如Vs2017 x64 Native Tools命令提示符),然后尝试编译过程。