【问题标题】:Visual Studio 17 not found while visual studio 19 is installed安装 Visual Studio 19 时未找到 Visual Studio 17
【发布时间】:2023-04-11 06:37:01
【问题描述】:

我正在使用 win 10 和 Anaconda 4.8.3 和 Python 3.7.4。在 C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools 我有 SDK。以下是我看到的文件夹:

安装 keras (conda install -c conda-forge keras) 后我开始遇到问题。我更新了anaconda,但是每当我打开anaconda的cmd提示符时,都会看到如下错误:

C:\Users\MyName>python C:\Users\MyName\Anaconda3\etc\keras\load_config.py  1>temp.txt
C:\Users\MyName>set /p KERAS_BACKEND= 0<temp.txt
C:\Users\MyName>del temp.txt
C:\Users\MyName>python -c "import keras"  1>nul 2>&1

C:\Users\MyName>if errorlevel 1 (
ver  1>nul
 set "KERAS_BACKEND=theano"
python -c "import keras"  1>nul 2>&1
)

 C:\Users\MyName>SET DISTUTILS_USE_SDK=1
 C:\Users\MyName>SET MSSdk=1
 C:\Users\MyName>SET "VS_VERSION=15.0"
 C:\Users\MyName>SET "VS_MAJOR=15"
 C:\Users\MyName>SET "VS_YEAR=2017"
 C:\Users\MyName>set "MSYS2_ARG_CONV_EXCL=/AI;/AL;/OUT;/out"
 C:\Users\MyName>set "MSYS2_ENV_CONV_EXCL=CL"
 C:\Users\MyName>set "PY_VCRUNTIME_REDIST=\bin\vcruntime140.dll"
 C:\Users\MyName>set "CXX=cl.exe"
 C:\Users\MyName>set "CC=cl.exe"
 C:\Users\MyName>set "VSINSTALLDIR="

 C:\Users\MyName>for /F "usebackq tokens=*" %i in (`vswhere.exe -nologo -products * -version 
 [15.0,16.0) -property installationPath`) do (set "VSINSTALLDIR=%i\" )

 C:\Users\MyName>if not exist "" (for /F "usebackq tokens=*" %i in (`vswhere.exe -nologo -products * 
 -requires Microsoft.VisualStudio.Component.VC.v141.x86.x64 -property installationPath`) do (set 
 "VSINSTALLDIR=%i\" ) )

 C:\Users\MyName>if not exist "" (set "VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual 
 Studio\2017\Professional\" )

 C:\Users\MyName>if not exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\" 
 (set "VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\" )

  C:\Users\MyName>if not exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\" (set 
"VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\" )

C:\Users\MyName>if not exist "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\" (set 
"VSINSTALLDIR=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\" )

  C:\Users\MyName>IF NOT "" == "" (
  set "INCLUDE=;"
  set "LIB=;"
  set "CMAKE_PREFIX_PATH=;"
   )

    C:\Users\MyName>call :GetWin10SdkDir

    C:\Users\MyName>call :GetWin10SdkDirHelper HKLM\SOFTWARE\Wow6432Node  1>nul 2>&1

    C:\Users\MyName>if errorlevel 1 call :GetWin10SdkDirHelper HKCU\SOFTWARE\Wow6432Node  1>nul 2>&1

    C:\Users\MyName>if errorlevel 1 call :GetWin10SdkDirHelper HKLM\SOFTWARE  1>nul 2>&1

    C:\Users\MyName>if errorlevel 1 call :GetWin10SdkDirHelper HKCU\SOFTWARE  1>nul 2>&1

    C:\Users\MyName>if errorlevel 1 exit /B 1

   C:\Users\MyName>exit /B 0

   C:\Users\MyName>for /F %i in ('dir /ON /B "C:\Program Files (x86)\Windows Kits\10\\include\10.*"') 
    DO (SET WindowsSDKVer=%~i )

   C:\Users\MyName>(SET WindowsSDKVer=10.0.18362.0 )

   C:\Users\MyName>if errorlevel 1 (echo "Didn't find any windows 10 SDK. I'm not sure if things will 
 work, but let's try..." )  else (echo Windows SDK version found as: "10.0.18362.0" )
 Windows SDK version found as: "10.0.18362.0"

  C:\Users\MyName>IF "win-64" == "win-64" (
  set "CMAKE_GEN=Visual Studio 15 2017 Win64"
  set "BITS=64"
  )  else (
  set "CMAKE_GEN=Visual Studio 15 2017"
  set "BITS=32"
  )

  C:\Users\MyName>pushd C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\
  The system cannot find the path specified.

  C:\Users\MyName>CALL "VC\Auxiliary\Build\vcvars64.bat" -vcvars_ver=14.16 10.0.18362.0
  The system cannot find the path specified.

  C:\Users\MyName>popd

  C:\Users\MyName>IF "" == "" SET "CMAKE_GENERATOR=Visual Studio 15 2017 Win64"

  C:\Users\MyName>call :GetWin10SdkDirHelper HKLM\SOFTWARE\Wow6432Node  1>nul 2>&1

  C:\Users\MyName>if errorlevel 1 call :GetWin10SdkDirHelper HKCU\SOFTWARE\Wow6432Node  1>nul 2>&1

  C:\Users\MyName>if errorlevel 1 call :GetWin10SdkDirHelper HKLM\SOFTWARE  1>nul 2>&1

  C:\Users\MyName>if errorlevel 1 call :GetWin10SdkDirHelper HKCU\SOFTWARE  1>nul 2>&1

  C:\Users\MyName>if errorlevel 1 exit /B 1

  C:\Users\MyName>exit /B 0

 (base) C:\Users\MyName>

我尝试更新我的 anaconda,删除用户环境变量中的一些旧路径,重新启动我的系统,再次卸载并安装 keras,但没有任何效果。非常感谢任何帮助。

【问题讨论】:

  • 在 Windows 上安装任何支持 GPU 的 Python 库绝对是一场噩梦。任何地方都没有可靠的说明,即使在图书馆自己的网站上也没有。所以这是我为您的第 1 步推荐的内容:放弃 Windows 并转到 Linux。最简单:Ubuntu LTS 风格,因为这样您就可以安装 Lambda Labs 堆栈,它将为您管理所有正确版本,包括硬件驱动程序(其中一个是 Anaconda)。

标签: python visual-studio keras installation anaconda


【解决方案1】:

我也有同样的问题。它似乎与Theano有关。对我来说,我解决了它

> conda uninstall tensorflow theano
> conda install -c anaconda tensorflow

如果我安装例如pymc3 引入了 theano,我又遇到了同样的问题。

【讨论】:

    【解决方案2】:

    我不确定这是否会有所帮助,但我可以提供一些建议来尝试并提供帮助。

    1. 是否还安装了 Visual Studio 2017?如果您不需要它,或许可以尝试将其卸载?
    2. 您的 Visual Studio 2019 是否已添加到路径中?
    3. 也许在您要工作的文件夹中设置一个虚拟环境并在那里安装/更新 anaconda?

    如果这些有帮助,请告诉我,祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多