0

如何强制 GCC 在我的代码中使用 threadIdx 行进行编译?

我正在尝试使用 ac 包装器编译我的 cuda 应用程序。

要生成 .so 文件,我运行: nvcc -arch=sm_11 -o libtest.so --shared -Xcompiler -fPIC main.cu

然后我尝试使用以下命令编译 c 包装器:gcc -std=c99 -I/usr/local/cuda/include -o main -L。-ltest main.c

这会在我的代码中导致以下错误几层(包含到包含的文件):错误:'threadIdx' undeclared

注意:一切都可以作为 GPU 应用程序编译和运行,无需任何 C 包装。

4

1 回答 1

1

Gcc 无法编译代码的 cuda 部分。您需要 nvcc 来编译代码。gcc遇到threadIdx时不知道该怎么办。

于 2012-11-05T07:13:38.307 回答