Я пытаюсь построить свой проект CMake / CUDA, используя инструментарий CUDA 9.0, который поставляется с компиляторами PGI. К сожалению, когда я пытаюсь сделать это, я получаю следующую ошибку при запуске cmake
:
/home/user/opt/pgi/linux86-64/2017/cuda/9.0/bin/nvcc -ccbin=/usr/bin/g++-6
-shared -dlink CMakeFiles/cmTC_858b1.dir/main.cu.o -o
CMakeFiles/cmTC_858b1.dir/cmake_device_link.o
g++-6: error:
/home/user/opt/pgi/linux86-64/2017/cuda/9.0/bin/crt/link.stub: No such file or directory
Действительно, такой файл не существует в указанном каталоге. Однако, если я пойду в системный каталог CUDA toolkit (/usr/lib/nvidia-cuda-toolkit/bin
) который устанавливается с apt-get
, каталог crt
с файлом link.stub
есть. Если я просто скопировать crt
из этого каталога в каталог инструментария PGI CUDA, CMake перестает жаловаться, и все компилируется (ну, я получаю ошибку компоновщика относительно одного из cuFFT
библиотеки но я думаю это совсем другая проблема).
link.stub
файл?Я использую комплект инструментов PGI Compiler версии 17.10.
Мы (PGI) поставляем только те части CUDA Toolkit, которые нам нужны для компиляции кодов OpenACC и CUDA Fortran. Наш пакет не предназначен для самостоятельной разработки CUDA C. Для этого, пожалуйста, скачайте полный набор инструментов CUDA 9.0 напрямую с NVIDIA https://developer.nvidia.com/cuda-downloads
Других решений пока нет …