使用nvcc进行编译得出"没有这样的文件或目录"

时间:2013-11-23 01:38:42

标签: c++ cuda nvcc

我正在尝试在Ubuntu上使用nvcc编译CUDA代码。但是,当我这样做时,我得到了这个输出:

> make
/usr/local/cuda/bin/nvcc -m64 --ptxas-options="-v" -gencode arch=compute_11,code=sm_11 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -o main main.cu
gcc: No such file or directory
make: *** [main] Error 1

即使我正在尝试编译只包含主函数的文件,它仍然不起作用:

> /usr/local/cuda/bin/nvcc main.cu 
gcc: No such file or directory

nvcc似乎对--version有所反应,所以它肯定存在。我不知道为什么它会调用gcc。

1 个答案:

答案 0 :(得分:5)

nvcc本身不是编译器。它是一个“编译器驱动程序”,编排编译设备代码,主机代码并将它们链接在一起的整个过程。在Linux上,它使用gcc编译主机代码。

在Ubuntu上安装gcc:

$ sudo apt-get --yes install build-essential