Python 安装编译错误
Python Installation Compilation Errors
我希望有人能帮助我,因为我已经坚持了一段时间,而且我对编译包不是很熟悉。尝试安装以下包:https://github.com/jhkorhonen/MOODS/wiki/Installation
运行 Python 3.5 (Anaconda),Windows 10 64 位,Microsoft Visual Studio 2017 社区版。这是我到目前为止所做的。
错误 1:cd
ed 到提取的包位置,运行 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.0\VC\bin
找到了它,所以我添加了PATH
。
然后另一个错误:
- 错误 2:
C:\Program Files (x86)\Microsoft Visual
Studio\Shared.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
- 方案二:于是我加了一个环境变量
INCLUDE
并设置了
到 C:\Program Files (x86)\Windows
Kits\Include.0.14393.0\ucrt
,其中有 io.h
.
然而,又一个错误:
C:\Program Files (x86)\Microsoft Visual Studio\Shared.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\Include.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\Include.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
我不知道如何解决这个问题。似乎向 PATH
添加内容并没有多大帮助。也许这与 Universal CRT 的引入有关?我应该卸载 Visual Studio 2017 并使用旧版本吗?
我遇到了非常相似的问题 运行ning Python 3.5 (Anaconda),Windows 10 64 位,Microsoft Visual Studio 2017 专业版。
您是否尝试过在命令行上启用 64 位 Visual C++ 工具集?
为此,请先在命令行上输入 运行 vcvars64.bat
。
在我的例子中,本地化是:
C:\Program Files (x86)\Microsoft Visual Studio17\Professional\VC\Auxiliary\Build
这对我来说已经足够了,解决了我的问题。
此外,我看到有些用户必须(我已经有了)。检查你是否也有它:
- 运行 Visual Studio 安装程序。
- Select修改按钮。
- 转到 "Individual Components" 选项卡。
- 向下滚动到 "Compilers, build tools and runtimes"。
- 勾选"Windows Universal CRT SDK".
- 安装。
PS:为了方便我推荐使用powershell。用于设置 vcvars64.bat
示例的脚本来自 here:
pushd "C:\Program Files (x86)\Microsoft Visual Studio17\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
也可以独立下载安装window 10 sdk,
使用这个 link,希望它能解决问题。
第 2 次尝试使用 visual studio 命令提示符,例如 Vs2017 x64 Native Tools 命令提示符,然后尝试编译过程。
我希望有人能帮助我,因为我已经坚持了一段时间,而且我对编译包不是很熟悉。尝试安装以下包:https://github.com/jhkorhonen/MOODS/wiki/Installation
运行 Python 3.5 (Anaconda),Windows 10 64 位,Microsoft Visual Studio 2017 社区版。这是我到目前为止所做的。
错误 1:
cd
ed 到提取的包位置,运行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.0\VC\bin
找到了它,所以我添加了PATH
。
然后另一个错误:
- 错误 2:
C:\Program Files (x86)\Microsoft Visual Studio\Shared.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
- 方案二:于是我加了一个环境变量
INCLUDE
并设置了 到C:\Program Files (x86)\Windows Kits\Include.0.14393.0\ucrt
,其中有io.h
.
然而,又一个错误:
C:\Program Files (x86)\Microsoft Visual Studio\Shared.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\Include.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\Include.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
我不知道如何解决这个问题。似乎向 PATH
添加内容并没有多大帮助。也许这与 Universal CRT 的引入有关?我应该卸载 Visual Studio 2017 并使用旧版本吗?
我遇到了非常相似的问题 运行ning Python 3.5 (Anaconda),Windows 10 64 位,Microsoft Visual Studio 2017 专业版。
您是否尝试过在命令行上启用 64 位 Visual C++ 工具集?
为此,请先在命令行上输入 运行 vcvars64.bat
。
在我的例子中,本地化是:
C:\Program Files (x86)\Microsoft Visual Studio17\Professional\VC\Auxiliary\Build
这对我来说已经足够了,解决了我的问题。
此外,我看到有些用户必须
- 运行 Visual Studio 安装程序。
- Select修改按钮。
- 转到 "Individual Components" 选项卡。
- 向下滚动到 "Compilers, build tools and runtimes"。
- 勾选"Windows Universal CRT SDK".
- 安装。
PS:为了方便我推荐使用powershell。用于设置 vcvars64.bat
示例的脚本来自 here:
pushd "C:\Program Files (x86)\Microsoft Visual Studio17\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
也可以独立下载安装window 10 sdk,
使用这个 link,希望它能解决问题。
第 2 次尝试使用 visual studio 命令提示符,例如 Vs2017 x64 Native Tools 命令提示符,然后尝试编译过程。