2016-10-14 3 views
1

Я установил OpenCV 3.1.0 и CUDA 8.0 в Ubuntu 16.04. Когда я проверяю «nvcc -version», чтобы проверить версию CUDA, она равна 8.0. Но когда я пытаюсь скомпилировать программу C++ OpenCV Я получаю следующее сообщение об ошибке:OpenCV 3.1.0 находит CUDA 7.5 вместо 8.0

Could NOT find CUDA: Found unsuitable version "7.5", but required 
is exact version "8.0" (found /usr/local/cuda) 

Так OpenCV говорит он основывает версии 7.5, когда установлен только один 8.0. Как CUDA, так и OpenCV хорошо работают в python без ошибок.

Любая идея о том, что происходит?

+0

Почему вы не указали вручную каталог cuda sdk в конфигурации Cmake? –

+0

Я делаю это, но даже при том, что он отчитывается, чтобы найти версию 7.5. Единственная версия CUDA, которую я установил, поскольку чистая установка Ubuntu - 8.0. –

ответ

0

Переменные окружения В рамках среды CUDA вы должны добавить следующее в файл .bashrc вашей домашней папки.

export CUDA_HOME=/usr/local/cuda-7.5 
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64 

PATH=${CUDA_HOME}/bin:${PATH} 
export PATH 
0

попробовать это:

cd /usr/local 
ls -l | grep cuda 

если вы видите что-то вроде:

lrwxrwxrwx 1 root root  9 9 4 10:08 cuda -> cuda-7.5/ 
drwxr-xr-x 13 root root 4096 1 5 2017 cuda-7.5 
drwxr-xr-x 14 root root 4096 7 27 17:24 cuda-8.0 

затем:

sudo rm -rf cuda 
ln -s cuda-8.0 cuda 
0

У меня была аналогичная проблема после обновления с CUDA 8.0 для 9.1. Когда я скомпилировал свой код и получил ошибку «нашел неподходящую версию (CUDA 8.0)». В моем случае это проблема предыдущих файлов cmake. Просто удаленные предыдущие файлы, созданные cmake, а затем они отлично работали.

Смежные вопросы