Я пытаюсь скомпилировать код CUDA, используя nvcc на Ubuntu. Однако, когда я это делаю, я получаю этот вывод:
> 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 для компиляции кода хоста.
Чтобы установить gcc на Ubuntu:
$ sudo apt-get --yes install build-essential