Компиляция CUDA inOpenCV в Arch Linux

535
José Jácome

Я пытаюсь скомпилировать программы в OpenCV 3.2.0 с помощью CUDA, у меня есть видеокарта Nvidia Gforce 950M (Maxwell) и я использую Arch Linux

Прежде всего, я установил на Arch Linux X64 и последние версии nvidia, nvidia-settings, gcc-5 и cuda

На Cmake я выбираю gcc-5 для компиляции, и это мой файл Cmake Compilation для CUDA

BUILD_CUDA_STUBS=ON BUILD_opencv_cudaarithm=ON BUILD_opencv_cudabgsegm=ON BUILD_opencv_cudacodec=ON BUILD_opencv_cudafeatures2d=ON BUILD_opencv_cudafilters=ON BUILD_opencv_cudaimgproc=ON BUILD_opencv_cudalegacy=ON BUILD_opencv_cudaobjdetect=ON BUILD_opencv_cudaoptflow=ON BUILD_opencv_cudastereo=ON BUILD_opencv_cudawarping=ON CUDA_ARCH_BIN = 5.0 5.2 CUDA_ARCH_PTX = CUDA_FAST_MATH = ON CUDA_GENERATION = Maxwell CUDA_HOST_COMPILER = /usr/bin/gcc-5 CUDA_SEPARABLE_COMPILATION = OFF CUDA_TOOLKIT_ROOT_DIR = /opt/cuda WITH_CUDA = ON 

(Значения из изображения Cmake GUI)

После компиляции OpenCV загружаю библиотеки в QT Creator

 TEMPLATE = app CONFIG += console c++11 CONFIG -= app_bundle CONFIG -= qt  SOURCES += main.cpp  unix:!macx: LIBS += -L$$PWD/../../../../usr/local/lib/ -lopencv_cudaarithm -lopencv_cudabgsegm -lopencv_cudacodec -lopencv_features2d -lopencv_cudafilters -lopencv_cudaimgproc -lopencv_cudalegacy -lopencv_cudaobjdetect -lopencv_cudaoptflow -lopencv_cudastereo -lopencv_cudawarping -lopencv_videoio  INCLUDEPATH += $$PWD/../../../../usr/local/include DEPENDPATH += $$PWD/../../../../usr/local/include    unix:!macx: LIBS += -L$$PWD/../../../../usr/local/lib/ -lopencv_core -lopencv_objdetect -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs  INCLUDEPATH += $$PWD/../../../../usr/local/include DEPENDPATH += $$PWD/../../../../usr/local/include  INCLUDEPATH += /opt/cuda/include/ LIBS += -L /opt/cuda/include/    unix:!macx: LIBS += -L$$PWD/../../../../opt/cuda/lib64/ -lcudart  INCLUDEPATH += $$PWD/../../../../opt/cuda/lib64 DEPENDPATH += $$PWD/../../../../opt/cuda/lib64 

Я пытаюсь скомпилировать cascadeclassifier_nvidia_api.cpp, но у меня следующая ошибка CUDA :

NCV Assertion Failed: No GPU found or the library is compiled without CUDA support, file = ../CUDA/main.cpp, line=163 

Что я делаю неправильно?

0
Можете ли вы запустить `lspci | grep -i nvidia` и убедитесь, что карта обнаруживается? Также AFAIK [Arch не является поддерживаемой ОС для CUDA takeit.] (Http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#axzz4YAF1BtWc) JMY1000 7 лет назад 0
Спасибо за ответ, это мой вывод команды `[josejacomeb @ lenovo-idepad-700 release] $ sudo lspci | grep -i nvidia 01: 00.0 3D-контроллер: NVIDIA Corporation GM107M [GeForce GTX 950M] (rev a2) `, я пробовал некоторые решения, и когда я компилирую с g ++ - 5, я могу избежать ошибки José Jácome 7 лет назад 1

0 ответов на вопрос