Visual Studio 2017搭配CUDA编译Nvidia SDK样本时无法打开cuda.h
解决Visual Studio编译Nvidia SDK样本时
cuda.h找不到的问题 我之前帮朋友排查过一模一样的问题——你已经装了CUDA,但Visual Studio的项目还没和CUDA的路径关联起来,编译器自然找不到cuda.h。别慌,跟着下面的步骤来,很快就能搞定:
先确认CUDA的安装路径
CUDA默认安装在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.X,这里的X.X是你装的CUDA版本号(比如8.0,毕竟你的SDK是8.1.24,版本尽量匹配会更顺利)。先找到这个路径,记好。
方法一:手动配置项目的包含目录
- 打开你的
AppDecPerf项目,右键项目名称选属性 - 在左边的属性列表里,展开配置属性 → VC++目录
- 找到包含目录,点右侧下拉箭头选编辑
- 点右上角的新建行,把CUDA的include目录加进去,比如
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include - 点确定保存
方法二:自动关联CUDA构建规则(更省心)
如果你的项目本身是CUDA相关的,用这个方法更省事,VS会自动帮你配好路径:
- 右键项目 → 生成依赖项 → 生成自定义
- 在弹出的窗口里,勾选
CUDA X.X.targets(X.X对应你的CUDA版本),点确定 - 这时候VS会自动把CUDA的包含目录、库目录都配置好,不用手动敲路径
额外提醒:版本兼容很重要
你的SDK是8.1.24,建议对应CUDA 8.0版本,要是装的是更高版本的CUDA,可能会出现头文件不匹配的问题,这时候也会报找不到cuda.h的错误。如果配置完还是不行,先检查下版本是否对应上了。
重新编译试试,应该就能解决这个C1083错误了!
内容的提问来源于stack exchange,提问作者JoshJoshJosh




