Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python Installation Compilation Errors

I'm hoping someone can help me since I've been stuck on this for a while, and I'm not very familiar with compiling packages. Trying to install the following package: https://github.com/jhkorhonen/MOODS/wiki/Installation

Running Python 3.5 (Anaconda), Windows 10 64bit, Microsoft Visual Studio 2017 Community Edition. Here is what I did so far.

  • Error 1:cded to extracted package location, and ran python setup.py install --user but got the error that says:

    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

  • Solution 1: Turns out C:\Program Files (x86)\Microsoft Visual Studio 14.0 does not have the \VC folder it is looking for, but I did find it at C:\Program Files (x86)\Microsoft Visual Studio\Shared\14.0\VC\bin, so I added that to PATH.

Then another error:

  • Error 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
  • Solution 2: So I added an environmental variable INCLUDE and set it to C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0\ucrt, which has io.h.

However, yet another error:

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

I'm not sure how to solve this. It seems like adding things to PATH isn't helping a whole lot. Maybe it has to do with the introduction of Universal CRT? Should I just uninstall Visual Studio 2017 and use an older version?

like image 290
Flow Nuwen Avatar asked Mar 13 '17 06:03

Flow Nuwen


People also ask

What is a compilation error Python?

Compile-Time Errors: Errors that occur when you violate the rules of writing syntax are known as Compile-Time errors. This compiler error indicates something that must be fixed before the code can be compiled.

Is there compilation error in Python?

Answer to the question is; At the time of compilation, the system checks the source code. Now if there's any fault or violation of programming convention or you can say violation of language's rules then compilation stops and system gives us compilation error. There are 2 types of compile-time errors.


2 Answers

you can also download and install window 10 sdk independently,

using this link, hope it solves the issue.

2nd try to use the the visual studio command propmpt e.g Vs2017 x64 Native Tools command prompt and then try the compilation process.

like image 33
Khan Avatar answered Nov 15 '22 17:11

Khan


I had very similiar issue running Python 3.5 (Anaconda), Windows 10 64bit, Microsoft Visual Studio 2017 Professional Edition.

Did you try to enable a 64-Bit Visual C++ Toolset on the Command Line? To do this, run vcvars64.bat on your command line first. In my case the localization is:

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

This was sufficient for me and solved my problem.

In addition, I see some users have to install "Windows Universal CRT SDK" (I have it already). Check if you also have it:

  1. Run Visual Studio Installer.
  2. Select Modify button.
  3. Go to "Individual Components" tab.
  4. Scroll down to "Compilers, build tools and runtimes".
  5. Tick "Windows Universal CRT SDK".
  6. Install.

PS: for convenience I recommend using powershell. A script for setting vcvars64.bat example from here:

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
like image 128
Kamil Czerski Avatar answered Nov 15 '22 18:11

Kamil Czerski