针对我的问题解决的方式将cuda版本更改为cuda10.2
自己要进行的项目操作
我需要搭建visual studio+cuda的环境运行cuda程序
我的工作环境windows10+vs2019(版本16.11.31,MSVC工具集版本14.29.30133, windows sdk 10.0.19041.685)
cuda版本10.2
报错信息
error : expected a "("
1> detected during instantiation of "void std::_Adl_verify_range(const _Iter &, const _Sentinel &) [with _Iter=const char *, _Sentinel=const char *]"
解决方案
参考github中关于这个问题的讨论
总结起来就是由于vs2019版本更新导致工具集等发生改变引起的,文中讨论到有人VS019更新后工具集由16.9.31229.75变到16.10.31321.278出现了这种问题。
文中给出一个简单的的cuda项目用于测试hello.cu
我最开始也尝试更改工作集(通过vs installer安装程序-修改-单个组件-勾选工具集和sdk版本)
但是由于更改之后,sdk版本改变造成cmake构建项目时候出现
CMake Error at CMakeLists.txt:1 (project):
No CMAKE_CXX_COMPILER could be found.
最后时间所限只能恢复原来的版本(运行原来项目,会有项目解决方案提示已经卸载,但是弹出的解决方案中给出了安装链接,点进去安装程序重新安装)
最终我选择10.2版本的cuda环境发现可行(由于显卡限制只能支持到cuda11.2所以只能降级cuda)
在另一个电脑上运行的是cuda12.0+vs2022(版本17.7.3,msvc版本:14.37.32822,window10 sdk:10.0.20348.0)是可以运行的
希望有更多尝试的同学可以多发发文章,这个报错不好搜索到