'catkin_make'期间ROS hydro opencv2链接错误

时间:2014-10-08 18:53:04

标签: c++ opencv ros

我的ROS水力发电机没什么问题。我需要将它用于一个项目,所以不能改为Indiko。

问题是我使用catkin_create_pkg packname opencv2 ...来创建我的项目包。但是当我尝试调用catkin_make时,我得到以下错误:

  

/opt/ros/hydro/share/catkin/cmake/catkinConfig.cmake:75的CMake错误   (find_package):找不到提供的包配置文件   通过“opencv2”使用以下任何名称:

opencv2Config.cmake
opencv2-config.cmake
     

将“opencv2”的安装前缀添加到CMAKE_PREFIX_PATH或设置   “opencv2_DIR”到包含上述文件之一的目录。如果
  “opencv2”提供了一个单独的开发包或SDK,请确保它   已安装。

我知道安装了opencv2,因为我可以使用rospack find opencv2找到它,我可以在与ROS无关的其他项目中使用它。

我在CMakeLists.txt和package.xml

中有以下行

的CMakeLists.txt:

  

find_package(catkin REQUIRED COMPONENTS opencv2)

     

include_directories(   $ {} catkin_INCLUDE_DIRS
  $ {opencv2_INCLUDE_DIRS})

     

target_link_libraries(BasicObstDetect_node
   $ {} catkin_LIBRARIES
   $ {opencv2_LIBRARIES})

package.xml中:

  

<build_depend>opencv2</build_depend>

     

<run_depend>opencv2</run_depend>

我曾尝试使用OpenCV而不是opencv2,但这没有任何区别。有什么建议吗?

1 个答案:

答案 0 :(得分:5)

我不确定,但这可能有用:编辑CMakeLists添加

find_package(OpenCV)
include_directories(${OpenCV_INCLUDE_DIRS})

target_link_libraries(follower ${OpenCV_LIBRARIES})