Hi, sorry for opening this request but I encountered this problem when performing the make check command during installation.
I'm using MacOS 12.6.2 on an Intel x86_64 architecture.
Here follows the output from the make check command,
Thank you for your availability,
Greetings
% make check
[ 1%] Built target catch_test_main
[ 40%] Built target minisam
[ 41%] Linking CXX executable testprojection
Undefined symbols for architecture x86_64:
"fmt::v9::detail::is_printable(unsigned int)", referenced from:
void fmt::v9::detail::for_each_codepoint<fmt::v9::detail::find_escape(char const*, char const*)::'lambda'(unsigned int, fmt::v9::basic_string_view<char>)>(fmt::v9::basic_string_view<char>, fmt::v9::detail::find_escape(char const*, char const*)::'lambda'(unsigned int, fmt::v9::basic_string_view<char>))::'lambda'(char const*, char const*)::operator()(char const*, char const*) const in testprojection.cpp.o
"fmt::v9::detail::throw_format_error(char const*)", referenced from:
decltype(fp.begin()) fmt::v9::formatter<fmt::v9::basic_string_view<char>, char, void>::parse<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> >(fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler>&) in testprojection.cpp.o
char const* fmt::v9::detail::parse_width<char, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&>(char const*, char const*, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&) in testprojection.cpp.o
char const* fmt::v9::detail::parse_precision<char, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&>(char const*, char const*, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&) in testprojection.cpp.o
char const* fmt::v9::detail::do_parse_arg_id<char, char const* fmt::v9::detail::parse_width<char, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&>(char const*, char const*, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&)::width_adapter&>(char const*, char const*, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&) in testprojection.cpp.o
char const* fmt::v9::detail::do_parse_arg_id<char, char const* fmt::v9::detail::parse_precision<char, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&>(char const*, char const*, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&)::precision_adapter&>(char const*, char const*, fmt::v9::detail::specs_checker<fmt::v9::detail::dynamic_specs_handler<fmt::v9::basic_format_parse_context<char, fmt::v9::detail::error_handler> > >&) in testprojection.cpp.o
fmt::v9::appender fmt::v9::basic_ostream_formatter<char>::format<Eigen::Transpose<Eigen::Matrix<double, 4, 1, 0, 4, 1> >, fmt::v9::appender>(Eigen::Transpose<Eigen::Matrix<double, 4, 1, 0, 4, 1> > const&, fmt::v9::basic_format_context<fmt::v9::appender, char>&) const in testprojection.cpp.o
int fmt::v9::detail::get_dynamic_spec<fmt::v9::detail::width_checker, fmt::v9::basic_format_arg<fmt::v9::basic_format_context<fmt::v9::appender, char> >, fmt::v9::detail::error_handler>(fmt::v9::basic_format_arg<fmt::v9::basic_format_context<fmt::v9::appender, char> >, fmt::v9::detail::error_handler) in testprojection.cpp.o
...
"fmt::v9::vprint(fmt::v9::basic_string_view<char>, fmt::v9::basic_format_args<fmt::v9::basic_format_context<fmt::v9::appender, char> >)", referenced from:
____C_A_T_C_H____T_E_S_T____0() in testprojection.cpp.o
____C_A_T_C_H____T_E_S_T____4() in testprojection.cpp.o
minisam::transform2sensor(Sophus::SE3<double, 0> const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&) in testprojection.cpp.o
minisam::internal::SophusTraitsImpl<Sophus::SE3<double, 0> >::Retract(Sophus::SE3<double, 0> const&, Eigen::Matrix<double, 6, 1, 0, 6, 1> const&) in testprojection.cpp.o
Sophus::SO3<double, 0>::expAndTheta(Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, double*) in testprojection.cpp.o
minisam::transform2image(Sophus::SE3<double, 0> const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&) in testprojection.cpp.o
Eigen::Matrix<double, 2, 1, 0, 2, 1> minisam::project<minisam::CalibK>(Sophus::SE3<double, 0> const&, minisam::CalibK const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&) in testprojection.cpp.o
...
"minisam::projectBundler(Sophus::SE3<double, 0> const&, minisam::CalibBundler const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&)", referenced from:
____C_A_T_C_H____T_E_S_T____10() in testprojection.cpp.o
"minisam::projectBundlerJacobians(Sophus::SE3<double, 0> const&, minisam::CalibBundler const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 2, 6, 0, 2, 6>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&)", referenced from:
____C_A_T_C_H____T_E_S_T____10() in testprojection.cpp.o
"minisam::transform2imageJacobians(Sophus::SE3<double, 0> const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 2, 6, 0, 2, 6>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&)", referenced from:
____C_A_T_C_H____T_E_S_T____4() in testprojection.cpp.o
void minisam::projectJacobians<minisam::CalibK>(Sophus::SE3<double, 0> const&, minisam::CalibK const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 2, 6, 0, 2, 6>&, Eigen::Matrix<double, 2, minisam::CalibK::dim(), ((Eigen::StorageOptions)0) | ((((2) == (1)) && ((minisam::CalibK::dim()) != (1))) ? ((Eigen::StorageOptions)1) : ((((minisam::CalibK::dim()) == (1)) && ((2) != (1))) ? ((Eigen::StorageOptions)0) : ((Eigen::StorageOptions)0))), 2, minisam::CalibK::dim()>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&) in testprojection.cpp.o
void minisam::projectJacobians<minisam::CalibKD>(Sophus::SE3<double, 0> const&, minisam::CalibKD const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 2, 6, 0, 2, 6>&, Eigen::Matrix<double, 2, minisam::CalibKD::dim(), ((Eigen::StorageOptions)0) | ((((2) == (1)) && ((minisam::CalibKD::dim()) != (1))) ? ((Eigen::StorageOptions)1) : ((((minisam::CalibKD::dim()) == (1)) && ((2) != (1))) ? ((Eigen::StorageOptions)0) : ((Eigen::StorageOptions)0))), 2, minisam::CalibKD::dim()>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&) in testprojection.cpp.o
"minisam::transform2worldJacobians(Sophus::SE3<double, 0> const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 3, 6, 0, 3, 6>&, Eigen::Matrix<double, 3, 3, 0, 3, 3>&)", referenced from:
____C_A_T_C_H____T_E_S_T____2() in testprojection.cpp.o
"minisam::transform2sensorJacobians(Sophus::SE3<double, 0> const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 3, 6, 0, 3, 6>&, Eigen::Matrix<double, 3, 3, 0, 3, 3>&)", referenced from:
____C_A_T_C_H____T_E_S_T____0() in testprojection.cpp.o
"std::__1::locale fmt::v9::detail::locale_ref::get<std::__1::locale>() const", referenced from:
void fmt::v9::detail::format_value<char, Eigen::Transpose<Eigen::Matrix<double, 4, 1, 0, 4, 1> > >(fmt::v9::detail::buffer<char>&, Eigen::Transpose<Eigen::Matrix<double, 4, 1, 0, 4, 1> > const&, fmt::v9::detail::locale_ref) in testprojection.cpp.o
void fmt::v9::detail::format_value<char, Eigen::Transpose<Eigen::Matrix<double, 3, 1, 0, 3, 1> const> >(fmt::v9::detail::buffer<char>&, Eigen::Transpose<Eigen::Matrix<double, 3, 1, 0, 3, 1> const> const&, fmt::v9::detail::locale_ref) in testprojection.cpp.o
void fmt::v9::detail::format_value<char, double>(fmt::v9::detail::buffer<char>&, double const&, fmt::v9::detail::locale_ref) in testprojection.cpp.o
"minisam::CalibK::projectJacobians(Eigen::Matrix<double, 2, 1, 0, 2, 1> const&, Eigen::Matrix<double, 2, 4, 0, 2, 4>&, Eigen::Matrix<double, 2, 2, 0, 2, 2>&) const", referenced from:
void minisam::projectJacobians<minisam::CalibK>(Sophus::SE3<double, 0> const&, minisam::CalibK const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 2, 6, 0, 2, 6>&, Eigen::Matrix<double, 2, minisam::CalibK::dim(), ((Eigen::StorageOptions)0) | ((((2) == (1)) && ((minisam::CalibK::dim()) != (1))) ? ((Eigen::StorageOptions)1) : ((((minisam::CalibK::dim()) == (1)) && ((2) != (1))) ? ((Eigen::StorageOptions)0) : ((Eigen::StorageOptions)0))), 2, minisam::CalibK::dim()>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&) in testprojection.cpp.o
"minisam::CalibKD::projectJacobians(Eigen::Matrix<double, 2, 1, 0, 2, 1> const&, Eigen::Matrix<double, 2, 8, 0, 2, 8>&, Eigen::Matrix<double, 2, 2, 0, 2, 2>&) const", referenced from:
void minisam::projectJacobians<minisam::CalibKD>(Sophus::SE3<double, 0> const&, minisam::CalibKD const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, Eigen::Matrix<double, 2, 6, 0, 2, 6>&, Eigen::Matrix<double, 2, minisam::CalibKD::dim(), ((Eigen::StorageOptions)0) | ((((2) == (1)) && ((minisam::CalibKD::dim()) != (1))) ? ((Eigen::StorageOptions)1) : ((((minisam::CalibKD::dim()) == (1)) && ((2) != (1))) ? ((Eigen::StorageOptions)0) : ((Eigen::StorageOptions)0))), 2, minisam::CalibKD::dim()>&, Eigen::Matrix<double, 2, 3, 0, 2, 3>&) in testprojection.cpp.o
"minisam::CalibKD::project(Eigen::Matrix<double, 2, 1, 0, 2, 1> const&) const", referenced from:
Eigen::Matrix<double, 2, 1, 0, 2, 1> minisam::project<minisam::CalibKD>(Sophus::SE3<double, 0> const&, minisam::CalibKD const&, Eigen::Matrix<double, 3, 1, 0, 3, 1> const&) in testprojection.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [tests/testprojection] Error 1
make[2]: *** [tests/CMakeFiles/testprojection.dir/all] Error 2
make[1]: *** [tests/CMakeFiles/check.dir/rule] Error 2
make: *** [check] Error 2