C++ 使用nvcc进行编译时会给出;没有这样的文件或目录;

C++ 使用nvcc进行编译时会给出;没有这样的文件或目录;,c++,cuda,nvcc,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

我试图在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。

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

要在Ubuntu上安装gcc:


$sudo apt get--yes install build essential

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

要在Ubuntu上安装gcc:


$SUDO APT get -是安装安装基本的< /P> GCC C++编译器,它也需要,构建基本只得到C编译器和标准。库标题。@Talonmes:我检查了Ubuntu 10.04、12.04和13.10的构建基本包。在这些目录中,它包括g++和libstdc++。事实证明,我安装了gcc,但nvcc搜索的目录中只有gcc-4.4和gcc-4.7,所以我将gcc符号链接到gcc-4.4。谢谢GCC C++编译器也需要它,编译必备只需要你的C编译器和标准。库标题。@Talonmes:我检查了Ubuntu 10.04、12.04和13.10的构建基本包。在这些目录中,它包括g++和libstdc++。事实证明,我安装了gcc,但nvcc搜索的目录中只有gcc-4.4和gcc-4.7,所以我将gcc符号链接到gcc-4.4。谢谢