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+.
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)
withfind_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+.