我是新来的Cuda的工作,我试图编译这个简单的test_1.cu
文件:使用此Cuda的编译器不能与GCC 4.5 +
#include <stdio.h>
__global__ void kernel(void)
{
}
int main (void)
{
kernel<<<1,1>>>();
printf("Hello, World!\n");
return 0;
}
:nvcc test_1.cu
我得到的输出是:
我的gcc --version:
gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
如何安装GCC(4.4 - )的第二个版本与4.6沿不搞乱了一切?
我发现这个老话题:
CUDA incompatible with my gcc version
答案是:
GCC 4.5和4.6不与CUDA的支持 - 代码不会编译和 的休息工具链(包括cuda-gdb)将无法正常工作。 你不能使用它们,限制是不可协商的。
你唯一的解决办法是安装一个GCC 4.4版作为第二 编译器(大多数发行版将允许)。有一个选项,其可以用来指向一个替代 编译 NVCC --compiler-BINDIR。创建一个本地目录和创建符号链接到 支持gcc版本的可执行文件。传递本地目录通过--compiler-BINDIR选项NVCC ,你应该能够编译 CUDA代码,而不影响系统的其余部分。
但我不知道该怎么做
不完全如此。 gcc 4.5工作得很好。它要求你注释头文件中的错误生成代码。 gcc 4.6是cuda 4.0不支持的另一个问题。不过,我希望新的cuda 4.1(1月初到期)与4.6兼容 – 2011-12-22 16:17:05