我有一个名为"KernelUtil.cu“的文件,如下所示
__device__ int add(int a, int b)
{
return a+b;
}我的主程序是"main.cu“。我需要从这里调用"add“函数。我该怎么做??下面的代码不起作用。
#include "KernelUtil.cu"
__global__ void test()
{
int c = add(10,10);
}
int main()
{
test<<<1,1>>>();
}在main.cu中已经定义了错误添加
发布于 2011-09-01 23:49:48
我希望您有一个自动编译所有.cu文件的规则,这意味着KernelUtil.cu实际上被编译了两次,一次是单独编译,一次是在包含在main.cu中时编译,因此add是重复的。
尝试将KernelUtil.cu重命名为KernelUtil.h (或.cuh)。
https://stackoverflow.com/questions/7270074
复制相似问题