ros-perception / image_common

Common code for working with images in ROS
http://www.ros.org/wiki/image_common
129 stars 223 forks source link

Issues compiling camera_calibration_parsers on Fedora 29/30+ #145

Open exoticDFT opened 5 years ago

exoticDFT commented 5 years ago

Main Idea: The CMakeLists.txt file provided by camera_calibration_parsers needs to be more robust to handle the various options of Boost Python that can be generated by various OSes.

So the title here is a little misleading, as the real issue has to do with the use of Boost Python. However, since Fedora 30 comes with Boost 1.69, there is an issue with the CMakeLists.txt. The problem is, as of Boost 1.67, the compiled Boost Python libraries are named boost-python2x or boost-python3x, based on the version of python Boost was compiled against. Therefore, in Fedora 30 the provided libraries are boost-python27 and boost-python37. If I manually replace find_package(Boost REQUIRED COMPONENTS filesystem python) with find_package(Boost REQUIRED COMPONENTS filesystem python27), I can compile on Fedora 30.

I have not tested on other systems, but due to the current CMakeLists.txt, camera_calibration_parsers will have issues compiling on any system using Boost 1.67+.