It tends to generate a lot of output around:
CMake Warning at /usr/share/cmake/Modules/FindBoost.cmake:1204 (message):
New Boost version may have incorrect or missing dependencies and imported
targets
Specifically for trying to build FreeCAD it KIND OF finds the libraries:
-- Found Boost: /usr/include (found suitable version "1.75.0", minimum
required is "1.55") found components: filesystem program_options regex
system thread chrono date_time atomic
But then later:
CMake Warning at /usr/share/cmake/Modules/FindBoost.cmake:1204 (message):
New Boost version may have incorrect or missing dependencies and imported
targets
Call Stack (most recent call first):
/usr/share/cmake/Modules/FindBoost.cmake:1326
(_Boost_COMPONENT_DEPENDENCIES)
/usr/share/cmake/Modules/FindBoost.cmake:1935
(_Boost_MISSING_DEPENDENCIES)
src/Mod/Path/libarea/CMakeLists.txt:20 (find_package)
-- Found Boost: /usr/include (found version "1.75.0") found components:
python39
-- found Boost: 1_75
-- boost-incude dirs are: /usr/include
-- boost-python lib is:
-- boost_LIBRARY_DIRS is: /usr/lib64
-- Boost_LIBRARIES is: /usr/lib64/libboost_python39.so
And then freecad (a fork testing vtk9 compatibility) fails with:
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to
`boost::match_results<__gnu_cxx::__normal_iterator<char const*,
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >,
std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*,
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > > > >
::maybe_assign(boost::match_results<__gnu_cxx::__normal_iterator<char
const*, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >,
std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*,
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > > > > > const&)'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to
`boost::program_options::abstract_variables_map::operator[](std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&) const'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to `vtable for
boost::program_options::error_with_option_name'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to
`boost::program_options::variables_map::variables_map()'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to
`boost::program_options::error_with_option_name::what() const'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to
`boost::re_detail_107500::verify_options(unsigned int,
boost::regex_constants::_match_flags)'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to `typeinfo
for boost::program_options::error_with_option_name'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to
`boost::re_detail_107500::get_mem_block()'
/usr/bin/ld: ../../lib/libFreeCADApp.so: undefined reference to `typeinfo
for boost::regex_error
...
But when FreeCADApp is actually linking
only /usr/lib64/libboost_serialization.so is linked against.
Full log:
https://copr-be.cloud.fedoraproject.org/results/orion/vtk9.0/fedora-rawhi...
WTH!?!?! What a mess.
Thanks,
Richard