无法搭建CUDA编译环境

Can't set up the environment for CUDA compilation

我正在尝试构建一个需要 CUDA 计算的项目,但每次进入 CUDA 编译阶段时,我总是遇到错误。 错误如下:

nvcc fatal   : Could not set up the environment for Microsoft Visual Studio using 'C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.20.27508/bin/Hostx64/x64/../../../../../../../VC/Auxiliary/Build/vcvars64.bat'

可能是因为我使用的是Visual Studio x64 Native Tools命令提示符,所以在nvcc构建开始之前已经设置了环境。当我从 Visual Studio 命令提示符启动 vcvars64.bat 时,它会抛出一个错误:

%PATH%";C:\Program Files\CMake\bin;C:\Program Files\Git\cmd;C:\opencv\x64\vc15\bin;;C:\Users\grayf\AppData\Local\Microsoft\WindowsApps;C:\Users\grayf\AppData\Local\Programs\Microsoft VS Code\bin;"=="" was unexpected at this time. 

当从 Windows 命令提示符启动 vcvars64.bat 时,错误消失。好像nvcc第二次启动vcvars64.bat,但是遇到了错误,所以无法继续编译。

但我找不到解决方法,因为如果不通过启动 vcvars64.bat 来设置环境,我根本无法编译任何东西,包括一个简单的测试 C 程序,它甚至无法到达 nvcc编译阶段。有人有同样的问题吗?我很高兴看到你的回答。

问题出在系统变量中的 PATH 变量上。它在某些路径的末尾包含不必要的“\”符号和一个看起来像 "C:\torch\bin;%PATH%" 的条目,而它应该只是 "C:\torch\bin"。 现在问题已经解决,nvcc 成功设置了环境,vcvars64.bat 即使从 VS 命令提示符启动也不会抛出任何错误。