rtabmap_ros
rtabmap_ros copied to clipboard
Build from source fails [ROS2 jazzy, Ubuntu 24.04]
Hello ! I have an issue during the colcon build from source. The strange point is that install from binaries (apt install) works perfectly ... I tried both GTSAM reinstallation from apt and from github sources, without success (yet) Specs : Ubuntu 24.04, ROS2 Jazzy
Thanks for help !
colcon build --symlink-install \
--cmake-args -DCMAKE_BUILD_TYPE=Release \
-DGTSAM_DIR=/usr/local/lib/cmake/GTSAM
Starting >>> rtabmap
Starting >>> rtabmap_msgs
Starting >>> rtabmap_python
Finished <<< rtabmap_python [1.89s]
--- stderr: rtabmap_msgs
CMake Warning:
Manually-specified variables were not used by the project:
GTSAM_DIR
---
Finished <<< rtabmap_msgs [5.93s]
[Processing: rtabmap]
[Processing: rtabmap]
[Processing: rtabmap]
--- stderr: rtabmap
CMake Warning (dev) at CMakeLists.txt:88 (EXEC_PROGRAM):
Policy CMP0153 is not set: The exec_program command should not be called.
Run "cmake --help-policy CMP0153" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
Use execute_process() instead.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/lib/x86_64-linux-gnu/cmake/pcl/Modules/FindFLANN.cmake:45 (find_package):
Policy CMP0144 is not set: find_package uses upper-case <PACKAGENAME>_ROOT
variables. Run "cmake --help-policy CMP0144" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
CMake variable FLANN_ROOT is set to:
/usr
For compatibility, find_package is ignoring the variable, but code in a
.cmake module might still use it.
Call Stack (most recent call first):
/usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:261 (find_package)
/usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:306 (find_flann)
/usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:570 (find_external_library)
CMakeLists.txt:240 (FIND_PACKAGE)
This warning is for project developers. Use -Wno-dev to suppress it.
In file included from /usr/lib/gcc/x86_64-linux-gnu/13/include/emmintrin.h:31,
from /usr/local/include/eigen3/Eigen/Core:176,
from /usr/local/include/eigen3/Eigen/StdVector:14,
from /usr/include/pcl-1.14/pcl/point_cloud.h:45,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/../include/rtabmap/core/util3d_registration.h:33,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/util3d_registration.cpp:28:
In function ‘__m128 _mm_loadu_ps(const float*)’,
inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float]’ at /usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:329:22,
inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float; int Alignment = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h:465:26,
inlined from ‘PacketType Eigen::internal::evaluator<Eigen::PlainObjectBase<Derived> >::packet(Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; Derived = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:204:40,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Matrix<float, 3, 1> >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:658:114,
inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 3, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false> >, Eigen::internal::evaluator<Eigen::Matrix<float, 3, 1> >, Eigen::internal::assign_op<float, float>, 0>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:416:75,
inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; SrcXprType = Eigen::Matrix<float, 3, 1>; Functor = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:741:37,
inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; SrcXprType = Eigen::Matrix<float, 3, 1>; Functor = Eigen::internal::assign_op<float, float>; Weak = void]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31,
inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; Src = Eigen::Matrix<float, 3, 1>; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; Src = Eigen::Matrix<float, 3, 1>; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; Src = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18,
inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::Matrix<float, 3, 1>; Derived = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>]’ at /usr/local/include/eigen3/Eigen/src/Core/Assign.h:66:28,
inlined from ‘typename Eigen::internal::umeyama_transform_matrix_type<MatrixType, OtherMatrixType>::type Eigen::umeyama(const MatrixBase<Derived>&, const MatrixBase<U>&, bool) [with Derived = Matrix<float, 3, -1>; OtherDerived = Matrix<float, 3, -1>]’ at /usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h:157:23:
/usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:940:23: warning: array subscript ‘__m128_u[0]’ is partly outside array bounds of ‘const VectorType [1]’ {aka ‘const Eigen::Matrix<float, 3, 1> [1]’} [-Warray-bounds=]
940 | return *(__m128_u *)__P;
| ^~~
In file included from /usr/local/include/eigen3/Eigen/Geometry:50,
from /usr/include/pcl-1.14/pcl/point_cloud.h:46:
/usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h: In function ‘typename Eigen::internal::umeyama_transform_matrix_type<MatrixType, OtherMatrixType>::type Eigen::umeyama(const MatrixBase<Derived>&, const MatrixBase<U>&, bool) [with Derived = Matrix<float, 3, -1>; OtherDerived = Matrix<float, 3, -1>]’:
/usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h:119:20: note: at offset [0, 8] into object ‘dst_mean’ of size 12
119 | const VectorType dst_mean = dst.rowwise().sum() * one_over_n;
| ^~~~~~~~
In function ‘__m128 _mm_loadu_ps(const float*)’,
inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float]’ at /usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:329:22,
inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float; int Alignment = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h:465:26,
inlined from ‘PacketType Eigen::internal::evaluator<Eigen::PlainObjectBase<Derived> >::packet(Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; Derived = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:204:40,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Matrix<float, 3, 1> >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:658:114,
inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 3, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false> >, Eigen::internal::evaluator<Eigen::Matrix<float, 3, 1> >, Eigen::internal::assign_op<float, float>, 0>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:416:75,
inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; SrcXprType = Eigen::Matrix<float, 3, 1>; Functor = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:741:37,
inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; SrcXprType = Eigen::Matrix<float, 3, 1>; Functor = Eigen::internal::assign_op<float, float>; Weak = void]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31,
inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; Src = Eigen::Matrix<float, 3, 1>; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; Src = Eigen::Matrix<float, 3, 1>; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>; Src = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18,
inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::Matrix<float, 3, 1>; Derived = Eigen::Block<Eigen::Block<Eigen::Matrix<float, 4, 4>, 4, 1, true>, -1, 1, false>]’ at /usr/local/include/eigen3/Eigen/src/Core/Assign.h:66:28,
inlined from ‘typename Eigen::internal::umeyama_transform_matrix_type<MatrixType, OtherMatrixType>::type Eigen::umeyama(const MatrixBase<Derived>&, const MatrixBase<U>&, bool) [with Derived = Matrix<float, 3, -1>; OtherDerived = Matrix<float, 3, -1>]’ at /usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h:151:23:
/usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:940:23: warning: array subscript ‘__m128_u[0]’ is partly outside array bounds of ‘const VectorType [1]’ {aka ‘const Eigen::Matrix<float, 3, 1> [1]’} [-Warray-bounds=]
940 | return *(__m128_u *)__P;
| ^~~
/usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h: In function ‘typename Eigen::internal::umeyama_transform_matrix_type<MatrixType, OtherMatrixType>::type Eigen::umeyama(const MatrixBase<Derived>&, const MatrixBase<U>&, bool) [with Derived = Matrix<float, 3, -1>; OtherDerived = Matrix<float, 3, -1>]’:
/usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h:119:20: note: at offset [0, 8] into object ‘dst_mean’ of size 12
119 | const VectorType dst_mean = dst.rowwise().sum() * one_over_n;
| ^~~~~~~~
In function ‘__m128 _mm_loadu_ps(const float*)’,
inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float]’ at /usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:329:22,
inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float; int Alignment = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h:465:26,
inlined from ‘PacketType Eigen::internal::evaluator<Eigen::PlainObjectBase<Derived> >::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; Derived = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:197:42,
inlined from ‘PacketType Eigen::internal::binary_evaluator<Eigen::CwiseBinaryOp<BinaryOp, Lhs, Rhs>, Eigen::internal::IndexBased, Eigen::internal::IndexBased>::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; BinaryOp = Eigen::internal::scalar_difference_op<float, float>; Lhs = const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>; Rhs = const Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:727:77,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:652:116,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacketByOuterInner(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:666:48,
inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 4, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >, Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >, Eigen::internal::assign_op<float, float>, 0>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:551:86,
inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:741:37,
inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = Eigen::internal::assign_op<float, float>; Weak = void]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31,
inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18,
inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Derived = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>]’ at /usr/local/include/eigen3/Eigen/src/Core/Assign.h:66:28,
inlined from ‘void pcl::registration::TransformationEstimationSVD<PointSource, PointTarget, Scalar>::getTransformationFromCorrelation(const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, Matrix4&) const [with PointSource = pcl::PointXYZINormal; PointTarget = pcl::PointXYZINormal; Scalar = float]’ at /usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_svd.hpp:216:43:
/usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:940:23: warning: array subscript ‘__m128_u[0]’ is partly outside array bounds of ‘const Eigen::Matrix<float, 3, 1> [1]’ [-Warray-bounds=]
940 | return *(__m128_u *)__P;
| ^~~
In file included from /usr/include/pcl-1.14/pcl/registration/transformation_estimation_svd.h:157,
from /usr/include/pcl-1.14/pcl/registration/icp.h:48,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/util3d_registration.cpp:34:
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_svd.hpp: In member function ‘void pcl::registration::TransformationEstimationSVD<PointSource, PointTarget, Scalar>::getTransformationFromCorrelation(const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, Matrix4&) const [with PointSource = pcl::PointXYZINormal; PointTarget = pcl::PointXYZINormal; Scalar = float]’:
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_svd.hpp:215:37: note: at offset [0, 8] into object ‘Rc’ of size 12
215 | const Eigen::Matrix<Scalar, 3, 1> Rc(R * centroid_src.head(3));
| ^~
In function ‘__m128 _mm_loadu_ps(const float*)’,
inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float]’ at /usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:329:22,
inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float; int Alignment = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h:465:26,
inlined from ‘PacketType Eigen::internal::evaluator<Eigen::PlainObjectBase<Derived> >::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; Derived = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:197:42,
inlined from ‘PacketType Eigen::internal::binary_evaluator<Eigen::CwiseBinaryOp<BinaryOp, Lhs, Rhs>, Eigen::internal::IndexBased, Eigen::internal::IndexBased>::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; BinaryOp = Eigen::internal::scalar_difference_op<float, float>; Lhs = const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>; Rhs = const Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:727:77,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:652:116,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacketByOuterInner(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:666:48,
inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 4, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >, Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >, Eigen::internal::assign_op<float, float>, 0>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:551:86,
inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:741:37,
inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = Eigen::internal::assign_op<float, float>; Weak = void]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31,
inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18,
inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Derived = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>]’ at /usr/local/include/eigen3/Eigen/src/Core/Assign.h:66:28,
inlined from ‘void pcl::registration::TransformationEstimationSVD<PointSource, PointTarget, Scalar>::getTransformationFromCorrelation(const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, Matrix4&) const [with PointSource = pcl::PointNormal; PointTarget = pcl::PointNormal; Scalar = float]’ at /usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_svd.hpp:216:43:
/usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:940:23: warning: array subscript ‘__m128_u[0]’ is partly outside array bounds of ‘const Eigen::Matrix<float, 3, 1> [1]’ [-Warray-bounds=]
940 | return *(__m128_u *)__P;
| ^~~
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_svd.hpp: In member function ‘void pcl::registration::TransformationEstimationSVD<PointSource, PointTarget, Scalar>::getTransformationFromCorrelation(const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, Matrix4&) const [with PointSource = pcl::PointNormal; PointTarget = pcl::PointNormal; Scalar = float]’:
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_svd.hpp:215:37: note: at offset [0, 8] into object ‘Rc’ of size 12
215 | const Eigen::Matrix<Scalar, 3, 1> Rc(R * centroid_src.head(3));
| ^~
In function ‘__m128 _mm_loadu_ps(const float*)’,
inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float]’ at /usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:329:22,
inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float; int Alignment = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h:465:26,
inlined from ‘PacketType Eigen::internal::evaluator<Eigen::PlainObjectBase<Derived> >::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; Derived = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:197:42,
inlined from ‘PacketType Eigen::internal::binary_evaluator<Eigen::CwiseBinaryOp<BinaryOp, Lhs, Rhs>, Eigen::internal::IndexBased, Eigen::internal::IndexBased>::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; BinaryOp = Eigen::internal::scalar_difference_op<float, float>; Lhs = const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>; Rhs = const Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:727:77,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:652:116,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacketByOuterInner(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:666:48,
inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 4, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >, Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >, Eigen::internal::assign_op<float, float>, 0>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:551:86,
inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:741:37,
inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = Eigen::internal::assign_op<float, float>; Weak = void]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31,
inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18,
inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Derived = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>]’ at /usr/local/include/eigen3/Eigen/src/Core/Assign.h:66:28,
inlined from ‘void pcl::registration::TransformationEstimation2D<PointSource, PointTarget, Scalar>::getTransformationFromCorrelation(const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, Matrix4&) const [with PointSource = pcl::PointXYZ; PointTarget = pcl::PointXYZ; Scalar = float]’ at /usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp:181:52,
inlined from ‘void pcl::registration::TransformationEstimation2D<PointSource, PointTarget, Scalar>::estimateRigidTransformation(pcl::ConstCloudIterator<PointT>&, pcl::ConstCloudIterator<PointTarget>&, Matrix4&) const [with PointSource = pcl::PointXYZ; PointTarget = pcl::PointXYZ; Scalar = float]’ at /usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp:148:35:
/usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:940:23: warning: array subscript ‘__m128_u[0]’ is partly outside array bounds of ‘const Eigen::Matrix<float, 3, 1> [1]’ [-Warray-bounds=]
940 | return *(__m128_u *)__P;
| ^~~
In file included from /usr/include/pcl-1.14/pcl/registration/transformation_estimation_2D.h:150,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/util3d_registration.cpp:35:
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp: In function ‘void pcl::registration::TransformationEstimation2D<PointSource, PointTarget, Scalar>::estimateRigidTransformation(pcl::ConstCloudIterator<PointT>&, pcl::ConstCloudIterator<PointTarget>&, Matrix4&) const [with PointSource = pcl::PointXYZ; PointTarget = pcl::PointXYZ; Scalar = float]’:
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp:180:37: note: at offset [0, 8] into object ‘Rc’ of size 12
180 | const Eigen::Matrix<Scalar, 3, 1> Rc(R * centroid_src.head(3).matrix());
| ^~
In function ‘__m128 _mm_loadu_ps(const float*)’,
inlined from ‘Packet Eigen::internal::ploadu(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float]’ at /usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:329:22,
inlined from ‘Packet Eigen::internal::ploadt(const typename unpacket_traits<Packet>::type*) [with Packet = __vector(4) float; int Alignment = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h:465:26,
inlined from ‘PacketType Eigen::internal::evaluator<Eigen::PlainObjectBase<Derived> >::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; Derived = Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:197:42,
inlined from ‘PacketType Eigen::internal::binary_evaluator<Eigen::CwiseBinaryOp<BinaryOp, Lhs, Rhs>, Eigen::internal::IndexBased, Eigen::internal::IndexBased>::packet(Eigen::Index, Eigen::Index) const [with int LoadMode = 0; PacketType = __vector(4) float; BinaryOp = Eigen::internal::scalar_difference_op<float, float>; Lhs = const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>; Rhs = const Eigen::Matrix<float, 3, 1>]’ at /usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h:727:77,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacket(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:652:116,
inlined from ‘void Eigen::internal::generic_dense_assignment_kernel<DstEvaluatorTypeT, SrcEvaluatorTypeT, Functor, Version>::assignPacketByOuterInner(Eigen::Index, Eigen::Index) [with int StoreMode = 16; int LoadMode = 0; PacketType = __vector(4) float; DstEvaluatorTypeT = Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >; SrcEvaluatorTypeT = Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >; Functor = Eigen::internal::assign_op<float, float>; int Version = 0]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:666:48,
inlined from ‘static void Eigen::internal::dense_assignment_loop<Kernel, 4, 0>::run(Kernel&) [with Kernel = Eigen::internal::generic_dense_assignment_kernel<Eigen::internal::evaluator<Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false> >, Eigen::internal::evaluator<Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> > >, Eigen::internal::assign_op<float, float>, 0>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:551:86,
inlined from ‘void Eigen::internal::call_dense_assignment_loop(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:741:37,
inlined from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; SrcXprType = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Functor = Eigen::internal::assign_op<float, float>; Weak = void]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31,
inlined from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename enable_if<(! evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Func = assign_op<float, float>]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27,
inlined from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>; Src = Eigen::CwiseBinaryOp<scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >]’ at /usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18,
inlined from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<float, float>, const Eigen::Block<const Eigen::Matrix<float, 4, 1>, -1, 1, false>, const Eigen::Matrix<float, 3, 1> >; Derived = Eigen::Block<Eigen::Matrix<float, 4, 4>, -1, -1, false>]’ at /usr/local/include/eigen3/Eigen/src/Core/Assign.h:66:28,
inlined from ‘void pcl::registration::TransformationEstimation2D<PointSource, PointTarget, Scalar>::getTransformationFromCorrelation(const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, const Eigen::Matrix<LhsScalar, -1, -1, 0>&, const Eigen::Matrix<Scalar, 4, 1>&, Matrix4&) const [with PointSource = pcl::PointXYZI; PointTarget = pcl::PointXYZI; Scalar = float]’ at /usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp:181:52,
inlined from ‘void pcl::registration::TransformationEstimation2D<PointSource, PointTarget, Scalar>::estimateRigidTransformation(pcl::ConstCloudIterator<PointT>&, pcl::ConstCloudIterator<PointTarget>&, Matrix4&) const [with PointSource = pcl::PointXYZI; PointTarget = pcl::PointXYZI; Scalar = float]’ at /usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp:148:35:
/usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:940:23: warning: array subscript ‘__m128_u[0]’ is partly outside array bounds of ‘const Eigen::Matrix<float, 3, 1> [1]’ [-Warray-bounds=]
940 | return *(__m128_u *)__P;
| ^~~
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp: In function ‘void pcl::registration::TransformationEstimation2D<PointSource, PointTarget, Scalar>::estimateRigidTransformation(pcl::ConstCloudIterator<PointT>&, pcl::ConstCloudIterator<PointTarget>&, Matrix4&) const [with PointSource = pcl::PointXYZI; PointTarget = pcl::PointXYZI; Scalar = float]’:
/usr/include/pcl-1.14/pcl/registration/impl/transformation_estimation_2D.hpp:180:37: note: at offset [0, 8] into object ‘Rc’ of size 12
180 | const Eigen::Matrix<Scalar, 3, 1> Rc(R * centroid_src.head(3).matrix());
| ^~
In file included from /opt/ros/jazzy/include/gtsam/base/Matrix.h:28,
from /opt/ros/jazzy/include/gtsam/base/Manifold.h:22,
from /opt/ros/jazzy/include/gtsam/geometry/BearingRange.h:21,
from /opt/ros/jazzy/include/gtsam/geometry/Pose2.h:23,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/OptimizerGTSAM.cpp:39:
/opt/ros/jazzy/include/gtsam/base/Vector.h:76:30: error: static assertion failed: Error: GTSAM was built against a different version of Eigen
76 | GTSAM_EIGEN_VERSION_MAJOR==EIGEN_MAJOR_VERSION,
| ^
/opt/ros/jazzy/include/gtsam/base/Vector.h:76:30: note: the comparison reduces to ‘(4 == 3)’
In file included from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/switchVariableLinear.h:14,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/betweenFactorSwitchable.h:17,
from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/OptimizerGTSAM.cpp:60:
/d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/DerivedValue.h:117:25: warning: ‘gtsam::Value& rtabmap::DerivedValue<DERIVED>::operator=(const gtsam::Value&) [with DERIVED = vertigo::SwitchVariableLinear]’ was hidden [-Woverloaded-virtual=]
117 | virtual gtsam::Value& operator=(const gtsam::Value& rhs) {
| ^~~~~~~~
/d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/switchVariableLinear.h:22:10: note: by ‘vertigo::SwitchVariableLinear::operator=’
22 | struct SwitchVariableLinear : public rtabmap::DerivedValue<SwitchVariableLinear> {
| ^~~~~~~~~~~~~~~~~~~~
/d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/DerivedValue.h:117:25: warning: ‘gtsam::Value& rtabmap::DerivedValue<DERIVED>::operator=(const gtsam::Value&) [with DERIVED = vertigo::SwitchVariableSigmoid]’ was hidden [-Woverloaded-virtual=]
117 | virtual gtsam::Value& operator=(const gtsam::Value& rhs) {
| ^~~~~~~~
In file included from /d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/betweenFactorSwitchable.h:18:
/d/khelvig/ros2_ws/src/rtabmap/corelib/src/optimizer/vertigo/gtsam/switchVariableSigmoid.h:22:10: note: by ‘vertigo::SwitchVariableSigmoid::operator=’
22 | struct SwitchVariableSigmoid : public rtabmap::DerivedValue<SwitchVariableSigmoid> {
| ^~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [corelib/src/CMakeFiles/rtabmap_core.dir/build.make:972: corelib/src/CMakeFiles/rtabmap_core.dir/optimizer/OptimizerGTSAM.cpp.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
gmake[1]: *** [CMakeFiles/Makefile2:872: corelib/src/CMakeFiles/rtabmap_core.dir/all] Error 2
gmake: *** [Makefile:156: all] Error 2
---
Failed <<< rtabmap [2min 4s, exited with code 2]
Summary: 2 packages finished [2min 4s]
1 package failed: rtabmap
2 packages had stderr output: rtabmap rtabmap_msgs
11 packages not processed
It seems you have a local version of Eigen that may be different than the one that PCL binaries are expecting.
from /usr/local/include/eigen3/Eigen/Core:176,
from /usr/local/include/eigen3/Eigen/StdVector:14,
from /usr/include/pcl-1.14/pcl/point_cloud.h:45,