2015-05-20 4 views
0

Я пытаюсь, чтобы CUDA работала с catkin (ros), который по существу является cmake. У меня еще нет файлов .cu. В качестве первого шага я хотел добавить CUDA в find_packageCUDA с cmake. Файл конфигурации не найден

find_package(catkin REQUIRED COMPONENTS 
    cv_bridge 
    image_transport 
    roscpp 
    message_generation 
    CUDA 
) 

После этого системы CMake выдает следующее сообщение об ошибке:

CMake Error at /opt/ros/hydro/share/catkin/cmake/catkinConfig.cmake:75 (find_package): 
    Could not find a configuration file for package CUDA. 

    Set CUDA_DIR to the directory containing a CMake configuration file for 
    CUDA. The file will have one of the following names: 

    CUDAConfig.cmake 
    cuda-config.cmake 

Я могу подтвердить, что CUDA в моей системе работает отлично. Я могу успешно запустить образцы cuda: bandwidthTest и deviceQuery. У меня есть cuda-5.5 в /usr/local/cuda-5.5/.

[[email protected] bin]$ nvcc --version 
nvcc: NVIDIA (R) Cuda compiler driver 
Copyright (c) 2005-2013 NVIDIA Corporation 
Built on Wed_Jul_17_18:36:13_PDT_2013 
Cuda compilation tools, release 5.5, V5.5.0 

Я также могу подтвердить, что с cmake у меня установлен FindCUDA.

[[email protected] bin]$ locate FindCUDA 
/usr/share/cmake-2.8/Modules/FindCUDA 
/usr/share/cmake-2.8/Modules/FindCUDA.cmake 
/usr/share/cmake-2.8/Modules/FindCUDA/make2cmake.cmake 
/usr/share/cmake-2.8/Modules/FindCUDA/parse_cubin.cmake 
/usr/share/cmake-2.8/Modules/FindCUDA/run_nvcc.cmake 

ответ

2

Это неправильное использование

find_package(catkin REQUIRED COMPONENTS 
    cv_bridge 
    image_transport 
    roscpp 
    message_generation 
    CUDA 
) 

Вместо этого используйте его как -

FIND_PACKAGE(CUDA REQUIRED) 
find_package(catkin REQUIRED COMPONENTS 
    cv_bridge 
    image_transport 
    roscpp 
    message_generation 
) 
Смежные вопросы