2017-02-12 74 views
0

我嘗試使用ROS動態二進制包的opencv3,但是當我使用catkin_make時我有一個我無法修復的錯誤!的ROS Kinetic Opencv3 Cmake錯誤

結果rospack找到opencv3:的/ opt/ROS /運動/股/ opencv3

錯誤:在/opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake CMake的警告: 76(find_package): 無法找到「opencv3」具有下列名稱的任何 提供包配置文件:

opencv3Config.cmake 
opencv3-config.cmake 

添加「opencv3」的安裝前綴CMAKE_PREFIX_PATH或設置 「opencv3_DIR」到包含上述文件之一的目錄。如果 「opencv3」提供了單獨的開發包或SDK,請確保它已安裝 。

感謝您的幫助

回答

1

如果你想在ROS動力學使用OpenCV的3,你只需要做你的CMakeLists.txt如下:find_package(OpenCV REQUIRED),因爲OpenCV的3是ROS動力學默認。注意大小寫,它必須是OpenCV(即 find_package(opencv) 是行不通的!)

參考:1.2節和2在http://wiki.ros.org/opencv3

+0

我改變了我的CMakeLists.txt: find_package(柳絮所需的組件cv_bridge OpenCV的 rospy sensor_msgs std_msgs ) – user1849595

+0

的錯誤是: - ==> add_subdirectory(vision_circle)上的/ opt/ROS CMake的警告/kinetic/share/catkin/cmake/catkinConfig.cmake:76(find_package): 找不到通過 「的OpenCV」 具有下列名稱的任何 提供包配置文件: OpenCVConfig.cmake 的OpenCV-config.cmake 添加安裝程序將「OpenCV」的efix修改爲CMAKE_PREFIX_PATH,或將 「OpenCV_DIR」設置爲包含上述文件之一的目錄。如果「OpenCV」 提供了單獨的開發包或SDK,請確保已安裝 。 – user1849595

+0

不要使用'find_package(catkin ...',但添加另一個語句'find_package(OpenCV REQUIRED)' – dseifert