(ROS Melodic) Issues with Cv_bridge, boost libraries aren't detected.
OS: Ubuntu Mate 18.04 running on RPI 3 B+
ROS: ROS Melodic
Objective: I am trying to use cv_bridge in-order to use opencv on my image topic for ROS. I'm relatively new to ROS, let alone Linux/Ubuntu so I've been having trouble getting past this issue for a while. Whenever I use catkin_make I get errors from vision_opencv stemming from the cv_bridge.
-- +++ processing catkin package: 'cv_bridge'
-- ==> add_subdirectory(vision_opencv/cv_bridge)
-- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython2.7.so (found version "2.7.17")
CMake Warning at /usr/share/cmake-3.10/Modules/FindBoost.cmake:1626 (message):
No header defined for python37; skipping header check
Call Stack (most recent call first):
vision_opencv/cv_bridge/CMakeLists.txt:11 (find_package)
CMake Error at /usr/share/cmake-3.10/Modules/FindBoost.cmake:1947 (message):
Unable to find the requested Boost libraries.
Boost version: 1.65.1
Boost include path: /usr/include
Could not find the following Boost libraries:
boost_python37
No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the
directory containing Boost libraries or BOOST_ROOT to the location of
Boost.
Call Stack (most recent call first):
vision_opencv/cv_bridge/CMakeLists.txt:11 (find_package)
-- Did not find OpenCV 4, trying OpenCV 3
-- Found OpenCV: /usr (found suitable version "3.2.0", minimum required is "3") found components: opencv_core opencv_imgproc opencv_imgcodecs
-- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython2.7.so (found suitable version "2.7.17", minimum required is "2.7")
I believe the boost libraries are already installed, with command find /usr/lib -iname 'libboost_python*.so*'
the output I get is:
/usr/lib/aarch64-linux-gnu/libboost_python-py27.so
/usr/lib/aarch64-linux-gnu/libboost_python3.so
/usr/lib/aarch64-linux-gnu/libboost_python3-py36.so
/usr/lib/aarch64-linux-gnu/libboost_python.so
/usr/lib/aarch64-linux-gnu/libboost_python3-py36.so.1.65.1
/usr/lib/aarch64-linux-gnu/libboost_python-py36.so
/usr/lib/aarch64-linux-gnu/libboost_python-py27.so.1.65.1
I've also checked to see if boost is installed
$ dpkg -s libboost-dev | grep Version
Version: 1.65.1.0ubuntu1
I feel like the underlying issue might be related to directory location however I am still pretty new to all this stuff so I have no idea, if someone could assist me I'd greatly appreciate it. Thank you for time
The one cv_bridge is looking for is 3.7, and the one installed now seems to be 3.6. You will need to install 3.7 or use the version of cv_bridge that supports 3.6.