在 win 11 上通过 `cuda-toolkit` 安装 CUDA 时出现问题 - 找不到 VS C++ 工具?

问题描述 投票:0回答:1

在 Windows 11 上并使用 mamba/mininforge,我使用

mamba install cuda-toolkit==12.1*
将 CUDA 安装到 Python 3.9 环境 - 通道是 conda-forge。激活环境时,我会在终端上收到一堆输出(见下文)。不确定这意味着什么 - CUDA 找不到 C++ 构建工具吗?

在安装 CUDA 之前,我安装了 VS 2022 C++ 工具,它应该可以工作(https://quasar.ugent.be/files/doc/cuda-msvc-compatibility.html),但显然我的 CUDA 安装看起来不正常适用于 2022 年文件夹(仅限 2019 年)。我需要将它们添加到路径中吗?

C:\Users\mluerig>mamba activate my-env

C:\Users\mluerig>SET DISTUTILS_USE_SDK=1

C:\Users\mluerig>SET MSSdk=1

C:\Users\mluerig>SET "VS_VERSION=16.0"

C:\Users\mluerig>SET "VS_MAJOR=16"

C:\Users\mluerig>SET "VS_YEAR=2019"

C:\Users\mluerig>set "MSYS2_ARG_CONV_EXCL=/AI;/AL;/OUT;/out"

C:\Users\mluerig>set "MSYS2_ENV_CONV_EXCL=CL"

C:\Users\mluerig>set "PY_VCRUNTIME_REDIST=\bin\vcruntime140.dll"

C:\Users\mluerig>set "CXX=cl.exe"

C:\Users\mluerig>set "CC=cl.exe"

C:\Users\mluerig>set "VSINSTALLDIR="

C:\Users\mluerig>set "NEWER_VS_WITH_OLDER_VC=0"

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

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

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

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


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

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

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

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

C:\Users\mluerig>call :GetWin10SdkDir

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

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

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

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

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

C:\Users\mluerig>exit /B 0

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

C:\Users\mluerig>(SET WindowsSDKVer=10.0.22621.0 )

C:\Users\mluerig>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.22621.0" )
Windows SDK version found as: "10.0.22621.0"

C:\Users\mluerig>set "CMAKE_PLAT=x64"

C:\Users\mluerig>set "VCVARSBAT=64"

C:\Users\mluerig>set "CMAKE_ARGS=-DCMAKE_BUILD_TYPE=Release"

C:\Users\mluerig>IF "" == "1" (set "CMAKE_ARGS=-DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX= -DCMAKE_PROGRAM_PATH=\bin;\Scripts;\Library\bin;\bin;\Scripts;\Library\bin" )

C:\Users\mluerig>IF NOT "win-64" == "win-64" (
set "CONDA_BUILD_CROSS_COMPILATION=1"
 set "CMAKE_ARGS=-DCMAKE_BUILD_TYPE=Release -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_SYSTEM_PROCESSOR=AMD64"
)  else (set "CONDA_BUILD_CROSS_COMPILATION=0" )

C:\Users\mluerig>IF 2019 GEQ 2019 (
set "CMAKE_GEN=Visual Studio 16 2019"
 set "USE_NEW_CMAKE_GEN_SYNTAX=1"
)  ELSE (
IF "win-64" == "win-64" (set "CMAKE_GEN=Visual Studio 16 2019 Win64" )  else (set "CMAKE_GEN=Visual Studio 16 2019" )
 set "USE_NEW_CMAKE_GEN_SYNTAX=0"
)

C:\Users\mluerig>echo "NEWER_VS_WITH_OLDER_VC=0"
"NEWER_VS_WITH_OLDER_VC=0"

C:\Users\mluerig>if "0" == "1" (set /p NEWER_VS= 0<"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\\VC\Auxiliary\Build\Microsoft.VCToolsVersion.default.txt" )

C:\Users\mluerig>type "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\\VC\Auxiliary\Build\Microsoft.VCToolsVersion.default.txt"
The system cannot find the path specified.

C:\Users\mluerig>dir "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\\VC\Redist\MSVC\"
The system cannot find the path specified.

C:\Users\mluerig>if "0" == "1" (
echo ""
 if "~0,4" == "14.2" (set "CMAKE_GEN=Visual Studio 16 2019" )  else (set "CMAKE_GEN=Visual Studio 17 2022" )
 set "USE_NEW_CMAKE_GEN_SYNTAX=1"
)

C:\Users\mluerig>IF "" == "" SET "CMAKE_GENERATOR=Visual Studio 16 2019"

C:\Users\mluerig>IF "1" == "1" (
IF "" == "" SET "CMAKE_GENERATOR_PLATFORM=x64"
 IF "" == "" SET "CMAKE_GENERATOR_TOOLSET=v142"
)

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

C:\Users\mluerig>CALL "VC\Auxiliary\Build\vcvars64.bat" -vcvars_ver=14.29 10.0.22621.0
The system cannot find the path specified.

C:\Users\mluerig>if 1 NEQ 0 (if "" == "" (CALL "VC\Auxiliary\Build\vcvars64.bat" ) )
The system cannot find the path specified.

C:\Users\mluerig>popd

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

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

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

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

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

C:\Users\mluerig>exit /B 0

C:\Users\mluerig>if defined INCLUDE (set "INCLUDE_CONDA_NVCC_BACKUP=" )

C:\Users\mluerig>set "INCLUDE=;\targets\x64"
cuda conda windows-11
1个回答
0
投票

这两天我也遇到了同样的问题。我无法从 nvidia 频道 cuda-tool 或 cuda 安装任何内容。

使用干净的环境并安装:

conda 安装 nvidia/label/cuda-11.8.0::cuda

给了我这个:

C:\tool\Gaussian-Splatting-For-Dummies>if defined INCLUDE_CONDA_NVCC_BACKUP (
set "INCLUDE="
 set "INCLUDE_CONDA_NVCC_BACKUP="
)

C:\tool\Gaussian-Splatting-For-Dummies>set "OCL_ICD_FILENAMES="

C:\tool\Gaussian-Splatting-For-Dummies>SET DISTUTILS_USE_SDK=1

C:\tool\Gaussian-Splatting-For-Dummies>SET MSSdk=1

C:\tool\Gaussian-Splatting-For-Dummies>SET "VS_VERSION=15.0"

C:\tool\Gaussian-Splatting-For-Dummies>SET "VS_MAJOR=15"

C:\tool\Gaussian-Splatting-For-Dummies>SET "VS_YEAR=2017"

C:\tool\Gaussian-Splatting-For-Dummies>set "MSYS2_ARG_CONV_EXCL=/AI;/AL;/OUT;/out"

C:\tool\Gaussian-Splatting-For-Dummies>set "MSYS2_ENV_CONV_EXCL=CL"

C:\tool\Gaussian-Splatting-For-Dummies>set "PY_VCRUNTIME_REDIST=\bin\vcruntime140.dll"

C:\tool\Gaussian-Splatting-For-Dummies>set "CXX=cl.exe"

C:\tool\Gaussian-Splatting-For-Dummies>set "CC=cl.exe"

C:\tool\Gaussian-Splatting-For-Dummies>CALL C:\Users\wimva\miniconda3\envs\plo\etc\conda\activate.d\vs2017_get_vsinstall_dir.bat
Windows SDK version found as: "10.0.22621.0"
**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.11.36
** Copyright (c) 2021 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'

C:\tool\Gaussian-Splatting-For-Dummies>if defined INCLUDE (set "INCLUDE_CONDA_NVCC_BACKUP=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\cppwinrt" )

C:\tool\Gaussian-Splatting-For-Dummies>set "INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\cppwinrt;\targets\x64"

我不知道这里发生了什么。

© www.soinside.com 2019 - 2024. All rights reserved.