На машине Linux, .. Добавить "$ ENV {HOME}/NVIDIA_GPU_Computing_SDK/C" в опции 'find_path' в модуле FindCUDA.cmake: (USR/доли/CMake-2,8/Модули/FindCUDA .cmake)
########################
# Look for the SDK stuff. As of CUDA 3.0 NVSDKCUDA_ROOT has been replaced with
# NVSDKCOMPUTE_ROOT with the old CUDA C contents moved into the C subdirectory
find_path(CUDA_SDK_ROOT_DIR common/inc/cutil.h
"$ENV{HOME}/NVIDIA_GPU_Computing_SDK/C"
"$ENV{NVSDKCOMPUTE_ROOT}/C"
"$ENV{NVSDKCUDA_ROOT}"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\NVIDIA Corporation\\Installed Products\\NVIDIA SDK 10\\Compute;InstallDir]"
"/Developer/GPU\ Computing/C"
)
cmake теперь находит мой 4.0 SDK автоматически.
Но моя сборка все еще не находит cutil.h, хотя она есть. $ HOME/NVIDIA_GPU_Computing_SDK/C/общие/вкл/cutil.h. Мне пришлось добавить в проект флаг включения, чтобы он наконец-то работал. CUDA_NVCC_FLAGS: -I/дома/вексельные/NVIDIA_GPU_Computing_SDK/C/общий/вкл
Примечание: -I/$ HOME/NVIDIA_GPU_Computing_SDK/C/общий/вкл делает НЕ работу. (Env $ HOME установлен правильно.)
У меня нет опыта работы с проектом, который вы строите, но для CUDA_SDK_ROOT_DIR установите его в каталог, в который инсталлятор SDK написал его содержимое, обычно ваш домашний каталог, если вы приняли параметры по умолчанию. Другие параметры отмены, которые, я думаю, можно смело игнорировать, они применили к теперь устаревшим и удаленным функциям эмуляции устройства CUDA API среды выполнения. – talonmies
Как я знаю, CUDA_SDK_ROOT_DIR получает системная переменная (не задана FindCuda). Итак, если вы не хотите устанавливать его через системные vars, вы можете установить его для cmake. Это значение по умолчанию является нормальным, и c CUDA может работать с ним. – Yappie