最近老师给配了一台NVIDIA Jetson AGX ORIN,在配置完C/C++环境之后,像在Windows端一样进行CUDA编程,原本正常运行的代码编译却总是报错如下:
这个问题困扰了我好久,搜了很多解决方法,有些完全不适用,还有一些完全和我之前的编程方法不一样,需要将CUDA和C++文件分开编程,这样太麻烦,后来索性决定找Linux的CUDA教学重头学起,没想到误打误撞解决了这个问题,解决方法如下:
将原来的g++编译改为nvcc,cpp文件也改为cu后缀名,即:
nvcc square.cu
得到结果如下:
完美解决, 看来就是因为CUDA的<<<>>>运算符C++编译器无法识别,必须要通过nvcc来编译!
总结:
1.CUDA程序需要使用cu的后缀名;
2.CUDA程序需要使用nvcc进行编译。
如果解决了你的问题,请不要吝啬你的赞哦!