cmake cannot find -lopencv_dep_cudart

来源:互联网 发布:windows终端机 编辑:程序博客网 时间:2024/06/08 19:18

最近在使用v4l2获取视频。在编译的过程中,遇到了下面的问题,CMakeLists代码和报错程序截图如下:

# cmake needs this linecmake_minimum_required(VERSION 2.8.4)# Define project nameproject(capturev4l2)# Find OpenCVfind_package(OpenCV REQUIRED)# Add OpenCV headers location to your include pathsinclude_directories(${OpenCV_INCLUDE_DIRS})# Declare the executable target built from your sourcesset(SOURCE capturev4l2.c)add_executable(capturev4l2 ${SOURCE})# Link your application with OpenCV librariestarget_link_libraries(capturev4l2 ${OpenCV_LIBS})

报错信息

发现上面的错误提示有关于cuda,cmake cannot find -lopencv_dep_cudart。添加了cuda的CMakeLists依赖之后代码如下

# cmake needs this linecmake_minimum_required(VERSION 2.8.4)# Define project nameproject(capturev4l2)# Find OpenCVfind_package(OpenCV REQUIRED)find_package(CUDA)# Add OpenCV headers and cuda header location to your include pathsinclude_directories(${OpenCV_INCLUDE_DIRS})include_directories("/usr/local/cuda-8.0/include")# Declare the executable target built from your sourcesset(SOURCE capturev4l2.c)add_executable(capturev4l2 ${SOURCE})# Link your application with OpenCV librariestarget_link_libraries(capturev4l2 ${OpenCV_LIBS})

编译

$cmake ..$make

结果还是报错
最后在https://devtalk.nvidia.com/default/topic/970325/jetson-tx1/cmake-cannot-find-lopencv_dep_cudart/发现有人遇到了同样的问题。在CMakeLists加入下面这行代码

set(CUDA_USE_STATIC_CUDA_RUNTIME OFF)

编译成功。
这里写图片描述


2 0
原创粉丝点击