我最近更新了我的VS 2017,现在我甚至无法构建默认的CUDA项目(添加了矢量的项目).
我怀疑这是由于以下错误:
Severity Code Description Project File Line Suppression State
Error C1189 #error: -- unsupported Microsoft Visual Studio version!
Only the versions 2012, 2013, 2015 and 2017 are supported! ver2
c:\program files\nvidia gpu computing
toolkit\cuda\v9.0\include\crt\host_config.h 133
Run Code Online (Sandbox Code Playgroud)
其他错误是无关紧要的,一旦我解决了这个错误就会消失.请注意,我能够从CUDA示例构建并运行simpleCUFFT.
在更新之前,我能够构建默认的CUDA项目,但是我无法构建CUDA Sample项目.我使用VS安装程序更新了我的VS2017并安装了CUDA SDK 10.0.15063.0.附件是截图
安装组件.
如果需要任何其他信息,请与我们联系.我知道以下主题,因为我使用的是最新的CUDA工具包,所以我不需要在host_config.h中进行更改.
谢谢,米哈伊尔
编辑:我的VS版本(在VS安装程序中显示)是15.5.0我的nvcc版本是9.0版,V9.0.176
Edit2:我试图将host_config.h第133行更改为:
#if _MSC_VER < 1600 || _MSC_VER > 1912
Run Code Online (Sandbox Code Playgroud)
此错误不再显示,但是,文件type_trails中会出现一堆错误"表达式必须具有常量值".我不知道如何解决它.
我找不到解决方案来管理如何使用标准 MSVC 2019 编译器在 Windows 上的 CMake 项目中使用语言 CUDA。
\n我正在尝试配置和编译此hello-cmake-cuda存储库(也在本博客文章中进行了描述)。
CMakeLists.txt文件内容:
cmake_minimum_required(VERSION 3.8 FATAL_ERROR)\nproject(hello LANGUAGES CXX CUDA)\nenable_language(CUDA)\nadd_executable(hello hello.cu)\nRun Code Online (Sandbox Code Playgroud)\ncmake ..以下是从构建目录中运行的命令的输出:
PS C:\\GitRepo\\cuda_hello\\build> cmake ..\n-- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.22000.\nCMake Error at C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCUDACompiler.cmake:311 (message):\n CMAKE_CUDA_ARCHITECTURES must be valid if set.\nCall Stack (most recent call first):\n CMakeLists.txt:5 (project)\n\n\n-- Configuring incomplete, errors occurred!\nSee also "C:/GitRepo/cuda_hello/build/CMakeFiles/CMakeOutput.log".\nSee also "C:/GitRepo/cuda_hello/build/CMakeFiles/CMakeError.log".\nRun Code Online (Sandbox Code Playgroud)\n这意味着architectures_testedfromCMakeDetermineCUDACompiler.cmake:311为空...
如何让 …