我是新來的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