I am encountering this error during colcon build. Please suggest a solution.
Starting >>> cslam_common_interfaces
Finished <<< cslam_common_interfaces [0.93s]
Starting >>> cslam
--- stderr: cslam
In file included from /usr/local/include/gtsam/base/Matrix.h:28,
from /usr/local/include/gtsam/base/Manifold.h:22,
from /usr/local/include/gtsam/geometry/BearingRange.h:21,
from /usr/local/include/gtsam/geometry/Pose3.h:22,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen
75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION &&
| ^
In file included from /usr/local/include/gtsam/base/Matrix.h:28,
from /usr/local/include/gtsam/base/Manifold.h:22,
from /usr/local/include/gtsam/geometry/BearingRange.h:21,
from /usr/local/include/gtsam/geometry/Pose3.h:22,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/utils/logger.h:10,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:1:
/usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen
75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION &&
| ^
In file included from /usr/local/include/gtsam/base/Matrix.h:28,
from /usr/local/include/gtsam/base/Manifold.h:22,
from /usr/local/include/gtsam/geometry/BearingRange.h:21,
from /usr/local/include/gtsam/geometry/Pose3.h:22,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen
75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION &&
| ^
In file included from /usr/local/include/gtsam/base/Matrix.h:28,
from /usr/local/include/gtsam/base/Manifold.h:22,
from /usr/local/include/gtsam/geometry/BearingRange.h:21,
from /usr/local/include/gtsam/geometry/Pose3.h:22,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/pose_graph_manager_node.cpp:1:
/usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen
75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION &&
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘geometry_msgs::msg::Pose cslam::gtsam_pose_to_msg(const gtsam::Pose3&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:10:35: error: ‘const class gtsam::Rot3’ has no member named ‘quaternion’; did you mean ‘Quaternion’?
10 | auto rotation = pose.rotation().quaternion();
| ^~~~~~
| Quaternion
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘geometry_msgs::msg::Transform cslam::gtsam_pose_to_transform_msg(const gtsam::Pose3&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:25:35: error: ‘const class gtsam::Rot3’ has no member named ‘quaternion’; did you mean ‘Quaternion’?
25 | auto rotation = pose.rotation().quaternion();
| ^~~~~~
| Quaternion
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘std::vector<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator >, std::allocator<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator > > > cslam::gtsam_factors_to_msg(const gtsam::NonlinearFactorGraph&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:63:16: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
63 | boost::dynamic_pointer_cast<gtsam::BetweenFactor>(
| ^~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here
507 | dynamic_pointer_cast(const shared_ptr<_Up>& r) noexcept
| ^~~~~~~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:63:70: error: expected primary-expression before ‘>’ token
63 | boost::dynamic_pointer_cast<gtsam::BetweenFactor>(
| ^~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:79:18: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
79 | boost::dynamic_pointer_cast(model);
| ^~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here
507 | dynamic_pointer_cast(const shared_ptr<_Up>& r) noexcept
| ^~~~~~~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:79:66: error: expected primary-expression before ‘>’ token
79 | boost::dynamic_pointer_cast(model);
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘gtsam::Values::shared_ptr cslam::values_msg_to_gtsam(const std::vector<cslam_commoninterfaces::msg::PoseGraphValue<std::allocator >, std::allocator<cslam_commoninterfaces::msg::PoseGraphValue<std::allocator > > >&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:24: error: ‘make_shared’ is not a member of ‘boost’
116 | auto values = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:24: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | gtsam::enable_if_t<!needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:49: error: expected primary-expression before ‘>’ token
116 | auto values = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:51: error: expected primary-expression before ‘)’ token
116 | auto values = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘gtsam::NonlinearFactorGraph::shared_ptr cslam::edges_msg_to_gtsam(const std::vector<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator >, std::allocator<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator > > >&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:23: error: ‘make_shared’ is not a member of ‘boost’
128 | auto graph = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:23: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | gtsam::enable_if_t<!needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:62: error: expected primary-expression before ‘>’ token
128 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:64: error: expected primary-expression before ‘)’ token
128 | auto graph = boost::make_shared();
| ^
make[2]: [CMakeFiles/pose_graph_manager.dir/build.make:118: CMakeFiles/pose_graph_manager.dir/src/back_end/gtsam_utils.cpp.o] Error 1
make[2]: Waiting for unfinished jobs....
/home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp: In member function ‘std::vector<std::pair<std::pair<gtsam::LabeledSymbol, gtsam::LabeledSymbol>, double> > cslam::Logger::compute_inter_robot_loop_closure_errors(const shared_ptr&, const shared_ptr&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:232:32: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
232 | boost::dynamic_pointer_cast<gtsam::BetweenFactor>(
| ^~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/utils/logger.h:8,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here
507 | dynamic_pointer_cast(const shared_ptr<_Up>& r) noexcept
| ^~~~~~~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:232:86: error: expected primary-expression before ‘>’ token
232 | boost::dynamic_pointer_cast<gtsam::BetweenFactor>(
| ^~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In constructor ‘cslam::DecentralizedPGO::DecentralizedPGO(std::shared_ptr&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:24: error: ‘make_shared’ is not a member of ‘boost’
71 | posegraph = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:24: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:63: error: expected primary-expression before ‘>’ token
71 | posegraph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:65: error: expected primary-expression before ‘)’ token
71 | posegraph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:36: error: ‘make_shared’ is not a member of ‘boost’
72 | current_poseestimates = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:36: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... __args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:61: error: expected primary-expression before ‘>’ token
72 | current_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:63: error: expected primary-expression before ‘)’ token
72 | current_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:37: error: ‘make_shared’ is not a member of ‘boost’
73 | odometry_poseestimates = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:37: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... __args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:62: error: expected primary-expression before ‘>’ token
73 | odometry_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:64: error: expected primary-expression before ‘)’ token
73 | odometry_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘cslam_common_interfaces::msg::PoseGraph cslam::DecentralizedPGO::fill_pose_graph_msg(const RobotIds&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:23: error: ‘make_shared’ is not a member of ‘boost’
380 | auto graph = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:23: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... __args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:62: error: expected primary-expression before ‘>’ token
380 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:64: error: expected primary-expression before ‘)’ token
380 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘std::pair<std::shared_ptr, std::shared_ptr > cslam::DecentralizedPGO::aggregate_pose_graphs()’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:23: error: ‘make_shared’ is not a member of ‘boost’
561 | auto graph = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:23: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... __args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:62: error: expected primary-expression before ‘>’ token
561 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:64: error: expected primary-expression before ‘)’ token
561 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:562:27: error: ‘make_shared’ is not a member of ‘boost’
562 | auto estimates = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:562:27: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... __args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:562:52: error: expected primary-expression before ‘>’ token
562
auto estimates = boost::make_shared();
^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:562:54: error: expected primary-expression before ‘)’ token
562
auto estimates = boost::make_shared();
^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:614:18: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
614
^~~~~~~~
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here
507
^~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:625:71: error: no matching function for call to ‘std::set<std::pair<long unsigned int, long unsigned int> >::count()’
625
^
In file included from /usr/include/c++/9/set:61,
from /opt/ros/foxy/include/rclcpp/executors/multi_threaded_executor.hpp:21,
from /opt/ros/foxy/include/rclcpp/executors.hpp:21,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/stl_set.h:748:7: note: candidate: ‘std::set<_Key, _Compare, _Alloc>::size_type std::set<_Key, _Compare, _Alloc>::count(const key_type&) const [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::size_type = long unsigned int; std::set<_Key, _Compare, _Alloc>::key_type = std::pair<long unsigned int, long unsigned int>]’
748
count(const key_type& __x) const
^~~~~
/usr/include/c++/9/bits/stl_set.h:748:29: note: no known conversion for argument 1 from ‘’ to ‘const key_type&’ {aka ‘const std::pair<long unsigned int, long unsigned int>&’}
748
^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:628:70: error: no matching function for call to ‘std::set<std::pair<long unsigned int, long unsigned int> >::insert()’
628
^
In file included from /usr/include/c++/9/set:61,
from /opt/ros/foxy/include/rclcpp/executors/multi_threaded_executor.hpp:21,
from /opt/ros/foxy/include/rclcpp/executors.hpp:21,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/stl_set.h:509:7: note: candidate: ‘std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename gnu_cxx::alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename gnu_cxx::alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<long unsigned int, long unsigned int>]’
509
insert(const value_type& __x)
^~
/usr/include/c++/9/bits/stl_set.h:509:32: note: no known conversion for argument 1 from ‘’ to ‘const value_type&’ {aka ‘const std::pair<long unsigned int, long unsigned int>&’}
509
^~
/usr/include/c++/9/bits/stl_set.h:518:27: note: no known conversion for argument 1 from ‘’ to ‘std::set<std::pair<long unsigned int, long unsigned int> >::value_type&&’ {aka ‘std::pair<long unsigned int, long unsigned int>&&’}
518
^
In file included from /usr/include/c++/9/set:61,
from /opt/ros/foxy/include/rclcpp/executors/multi_threaded_executor.hpp:21,
from /opt/ros/foxy/include/rclcpp/executors.hpp:21,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:146,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/stl_set.h:578:7: note: candidate: ‘void std::set<_Key, _Compare, _Alloc>::insert(std::initializer_list<_Tp>) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >]’
578
insert(initializer_list __l)
^~
/usr/include/c++/9/bits/stl_set.h:578:43: note: no known conversion for argument 1 from ‘’ to ‘std::initializer_list<std::pair<long unsigned int, long unsigned int> >’
578
insert(initializer_list __l)
~~~~~~~^
/usr/include/c++/9/bits/stl_set.h:598:7: note: candidate: ‘std::set<_Key, _Compare, _Alloc>::insert_return_type std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::node_type&&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::insert_return_type = std::_Node_insert_return<std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >, std::_Node_handle<std::pair<long unsigned int, long unsigned int>, std::pair<long unsigned int, long unsigned int>, std::allocator<std::_Rb_tree_node<std::pair<long unsigned int, long unsigned int> > > > >; std::set<_Key, _Compare, _Alloc>::node_type = std::_Node_handle<std::pair<long unsigned int, long unsigned int>, std::pair<long unsigned int, long unsigned int>, std::allocator<std::_Rb_tree_node<std::pair<long unsigned int, long unsigned int> > > >]’
598
insert(node_type&& __nh)
^~
/usr/include/c++/9/bits/stl_set.h:598:26: note: no known conversion for argument 1 from ‘’ to ‘std::set<std::pair<long unsigned int, long unsigned int> >::node_type&&’ {aka ‘std::_Node_handle<std::pair<long unsigned int, long unsigned int>, std::pair<long unsigned int, long unsigned int>, std::allocator<std::_Rb_tree_node<std::pair<long unsigned int, long unsigned int> > > >&&’}
598
^~
/usr/include/c++/9/bits/stl_set.h:603:7: note: candidate expects 2 arguments, 1 provided
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:633:27: error: could not convert ‘{graph, estimates}’ from ‘’ to ‘std::pair<std::shared_ptr, std::shared_ptr >’
633
return {graph, estimates};
^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘void cslam::DecentralizedPGO::share_optimized_estimates(const gtsam::Values&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:676:39: error: ‘const class gtsam::Values’ has no member named ‘filter’
676 | gtsam_values_to_msg(estimates.filter(gtsam::LabeledSymbol::LabelTest(
| ^~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘void cslam::DecentralizedPGO::visualization_callback()’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:704:25: error: ‘make_shared’ is not a member of ‘boost’
704 | auto graph = boost::make_shared();
| ^~~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:704:25: note: suggested alternatives:
In file included from /usr/include/c++/9/memory:81,
from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’
714 | make_shared(_Args&&... __args)
| ^~~
In file included from /usr/local/include/gtsam/geometry/SOn.h:23,
from /usr/local/include/gtsam/geometry/SO3.h:23,
from /usr/local/include/gtsam/geometry/Quaternion.h:22,
from /usr/local/include/gtsam/geometry/Rot3.h:27,
from /usr/local/include/gtsam/geometry/Pose3.h:24,
from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6,
from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1:
/usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’
62 | needs_eigen_aligned_allocator::value, std::shared_ptr> make_shared(Args &&... args) {
| ^~~
I am encountering this error during colcon build. Please suggest a solution.
Starting >>> cslam_common_interfaces Finished <<< cslam_common_interfaces [0.93s] >, std::allocator<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator > > > cslam::gtsam_factors_to_msg(const gtsam::NonlinearFactorGraph&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:63:16: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
63 | boost::dynamic_pointer_cast<gtsam::BetweenFactor>(
| ^>(
| ^~
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:79:18: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
79 | boost::dynamic_pointer_cast(model);
| ^(model);
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘gtsam::Values::shared_ptr cslam::values_msg_to_gtsam(const std::vector<cslam_commoninterfaces::msg::PoseGraphValue<std::allocator >, std::allocator<cslam_commoninterfaces::msg::PoseGraphValue<std::allocator > > >&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:24: error: ‘make_shared’ is not a member of ‘boost’
116 | auto values = boost::make_shared();
| ^ args)
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:51: error: expected primary-expression before ‘)’ token
116 | auto values = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘gtsam::NonlinearFactorGraph::shared_ptr cslam::edges_msg_to_gtsam(const std::vector<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator >, std::allocator<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator > > >&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:23: error: ‘make_shared’ is not a member of ‘boost’
128 | auto graph = boost::make_shared();
| ^ args)
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:64: error: expected primary-expression before ‘)’ token
128 | auto graph = boost::make_shared();
| ^
make[2]: [CMakeFiles/pose_graph_manager.dir/build.make:118: CMakeFiles/pose_graph_manager.dir/src/back_end/gtsam_utils.cpp.o] Error 1
make[2]: Waiting for unfinished jobs....
/home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp: In member function ‘std::vector<std::pair<std::pair<gtsam::LabeledSymbol, gtsam::LabeledSymbol>, double> > cslam::Logger::compute_inter_robot_loop_closure_errors(const shared_ptr&, const shared_ptr&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:232:32: error: ‘dynamic_pointer_cast’ is not a member of ‘boost’; did you mean ‘std::dynamic_pointer_cast’?
232 | boost::dynamic_pointer_cast<gtsam::BetweenFactor>(
| ^>(
| ^~
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In constructor ‘cslam::DecentralizedPGO::DecentralizedPGO(std::shared_ptr&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:24: error: ‘make_shared’ is not a member of ‘boost’
71 | posegraph = boost::make_shared();
| ^ args)
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
Starting >>> cslam --- stderr: cslam
In file included from /usr/local/include/gtsam/base/Matrix.h:28, from /usr/local/include/gtsam/base/Manifold.h:22, from /usr/local/include/gtsam/geometry/BearingRange.h:21, from /usr/local/include/gtsam/geometry/Pose3.h:22, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen 75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION && | ^ In file included from /usr/local/include/gtsam/base/Matrix.h:28, from /usr/local/include/gtsam/base/Manifold.h:22, from /usr/local/include/gtsam/geometry/BearingRange.h:21, from /usr/local/include/gtsam/geometry/Pose3.h:22, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/utils/logger.h:10, from /home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:1: /usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen 75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION && | ^ In file included from /usr/local/include/gtsam/base/Matrix.h:28, from /usr/local/include/gtsam/base/Manifold.h:22, from /usr/local/include/gtsam/geometry/BearingRange.h:21, from /usr/local/include/gtsam/geometry/Pose3.h:22, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen 75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION && | ^ In file included from /usr/local/include/gtsam/base/Matrix.h:28, from /usr/local/include/gtsam/base/Manifold.h:22, from /usr/local/include/gtsam/geometry/BearingRange.h:21, from /usr/local/include/gtsam/geometry/Pose3.h:22, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/pose_graph_manager_node.cpp:1: /usr/local/include/gtsam/base/Vector.h:75:52: error: static assertion failed: Error: GTSAM was built against a different version of Eigen 75 | GTSAM_EIGEN_VERSION_WORLD==EIGEN_WORLD_VERSION && | ^ /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘geometry_msgs::msg::Pose cslam::gtsam_pose_to_msg(const gtsam::Pose3&)’: /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:10:35: error: ‘const class gtsam::Rot3’ has no member named ‘quaternion’; did you mean ‘Quaternion’? 10 | auto rotation = pose.rotation().quaternion(); | ^
~~~~~ | Quaternion /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘geometry_msgs::msg::Transform cslam::gtsam_pose_to_transform_msg(const gtsam::Pose3&)’: /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:25:35: error: ‘const class gtsam::Rot3’ has no member named ‘quaternion’; did you mean ‘Quaternion’? 25 | auto rotation = pose.rotation().quaternion(); | ^~~~~~ | Quaternion /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp: In function ‘std::vector<cslam_commoninterfaces::msg::PoseGraphEdge<std::allocator~~~~~~~ In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here 507 | dynamic_pointer_cast(const shared_ptr<_Up>& r) noexcept | ^~~~~~~~ /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:63:70: error: expected primary-expression before ‘>’ token 63 | boost::dynamic_pointer_cast<gtsam::BetweenFactor~~~~~~~ In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here 507 | dynamic_pointer_cast(const shared_ptr<_Up>& r) noexcept | ^~~~~~~~ /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:79:66: error: expected primary-expression before ‘>’ token 79 | boost::dynamic_pointer_cast~~/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:24: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&...~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | gtsam::enable_if_t<!needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:116:49: error: expected primary-expression before ‘>’ token 116 | auto values = boost::make_shared~~/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:23: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&...~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/gtsam_utils.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | gtsam::enable_if_t<!needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/gtsam_utils.cpp:128:62: error: expected primary-expression before ‘>’ token 128 | auto graph = boost::make_shared~~~~~~~ In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/utils/logger.h:8, from /home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here 507 | dynamic_pointer_cast(const shared_ptr<_Up>& r) noexcept | ^~~~~~~~ /home/e/Swarm-SLAM/src/cslam/src/back_end/utils/logger.cpp:232:86: error: expected primary-expression before ‘>’ token 232 | boost::dynamic_pointer_cast<gtsam::BetweenFactor~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:24: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&...~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:63: error: expected primary-expression before ‘>’ token 71 | posegraph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:71:65: error: expected primary-expression before ‘)’ token
71 | posegraph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:36: error: ‘make_shared’ is not a member of ‘boost’
72 | current_poseestimates = boost::make_shared();
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:36: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&... __args) | ^~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:61: error: expected primary-expression before ‘>’ token 72 | current_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:72:63: error: expected primary-expression before ‘)’ token
72 | current_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:37: error: ‘make_shared’ is not a member of ‘boost’
73 | odometry_poseestimates = boost::make_shared();
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:37: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&... __args) | ^~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:62: error: expected primary-expression before ‘>’ token 73 | odometry_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:73:64: error: expected primary-expression before ‘)’ token
73 | odometry_poseestimates = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘cslam_common_interfaces::msg::PoseGraph cslam::DecentralizedPGO::fill_pose_graph_msg(const RobotIds&)’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:23: error: ‘make_shared’ is not a member of ‘boost’
380 | auto graph = boost::make_shared();
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:23: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&... __args) | ^~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:62: error: expected primary-expression before ‘>’ token 380 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:380:64: error: expected primary-expression before ‘)’ token
380 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘std::pair<std::shared_ptr, std::shared_ptr > cslam::DecentralizedPGO::aggregate_pose_graphs()’:
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:23: error: ‘make_shared’ is not a member of ‘boost’
561 | auto graph = boost::make_shared();
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:23: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&... __args) | ^~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:62: error: expected primary-expression before ‘>’ token 561 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:561:64: error: expected primary-expression before ‘)’ token
561 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:562:27: error: ‘make_shared’ is not a member of ‘boost’
562 | auto estimates = boost::make_shared();
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:562:27: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&... __args) | ^~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~~~~~~~~ In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:507:5: note: ‘std::dynamic_pointer_cast’ declared here 507~~~~~~~ /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:614:72: error: expected primary-expression before ‘>’ token 614~~~~^~~ /usr/include/c++/9/bits/stl_set.h:754:2: note: candidate: ‘template~/usr/include/c++/9/bits/stl_set.h:509:32: note: no known conversion for argument 1 from ‘~~~~^/usr/include/c++/9/bits/stl_set.h:518:7: note: candidate: ‘std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<long unsigned int, long unsigned int>]’ 518~/usr/include/c++/9/bits/stl_set.h:518:27: note: no known conversion for argument 1 from ‘~~~^/usr/include/c++/9/bits/stl_set.h:546:7: note: candidate: ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, const value_type&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<long unsigned int, long unsigned int>]’ 546~/usr/include/c++/9/bits/stl_set.h:546:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/9/bits/stl_set.h:551:7: note: candidate: ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::value_type&&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::value_type = std::pair<long unsigned int, long unsigned int>]’ 551~/usr/include/c++/9/bits/stl_set.h:551:7: note: candidate expects 2 arguments, 1 provided /usr/include/c++/9/bits/stl_set.h:566:2: note: candidate: ‘template~/usr/include/c++/9/bits/stl_set.h:566:2: note: template argument deduction/substitution failed: /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:628:70: note: candidate expects 2 arguments, 1 provided 628~/usr/include/c++/9/bits/stl_set.h:578:43: note: no known conversion for argument 1 from ‘~~~~~~~^/usr/include/c++/9/bits/stl_set.h:598:7: note: candidate: ‘std::set<_Key, _Compare, _Alloc>::insert_return_type std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::node_type&&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::insert_return_type = std::_Node_insert_return<std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >, std::_Node_handle<std::pair<long unsigned int, long unsigned int>, std::pair<long unsigned int, long unsigned int>, std::allocator<std::_Rb_tree_node<std::pair<long unsigned int, long unsigned int> > > > >; std::set<_Key, _Compare, _Alloc>::node_type = std::_Node_handle<std::pair<long unsigned int, long unsigned int>, std::pair<long unsigned int, long unsigned int>, std::allocator<std::_Rb_tree_node<std::pair<long unsigned int, long unsigned int> > > >]’ 598~/usr/include/c++/9/bits/stl_set.h:598:26: note: no known conversion for argument 1 from ‘~~^~ /usr/include/c++/9/bits/stl_set.h:603:7: note: candidate: ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(std::set<_Key, _Compare, _Alloc>::const_iterator, std::set<_Key, _Compare, _Alloc>::node_type&&) [with _Key = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<std::pair<long unsigned int, long unsigned int> >; _Alloc = std::allocator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<long unsigned int, long unsigned int> >; std::set<_Key, _Compare, _Alloc>::node_type = std::_Node_handle<std::pair<long unsigned int, long unsigned int>, std::pair<long unsigned int, long unsigned int>, std::allocator<std::_Rb_tree_node<std::pair<long unsigned int, long unsigned int> > > >]’ 603~/usr/include/c++/9/bits/stl_set.h:603:7: note: candidate expects 2 arguments, 1 provided /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:633:27: error: could not convert ‘{graph, estimates}’ from ‘/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘void cslam::DecentralizedPGO::share_optimized_estimates(const gtsam::Values&)’: /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:676:39: error: ‘const class gtsam::Values’ has no member named ‘filter’ 676 | gtsam_values_to_msg(estimates.filter(gtsam::LabeledSymbol::LabelTest( | ^();
| ^::value, std::shared_ptr> make_shared(Args &&... args) {
| ^
~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp: In member function ‘void cslam::DecentralizedPGO::visualization_callback()’: /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:704:25: error: ‘make_shared’ is not a member of ‘boost’ 704 | auto graph = boost::make_shared~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:704:25: note: suggested alternatives: In file included from /usr/include/c++/9/memory:81, from /opt/ros/foxy/include/rclcpp/rclcpp.hpp:144, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:4, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/include/c++/9/bits/shared_ptr.h:714:5: note: ‘std::make_shared’ 714 | make_shared(_Args&&... __args) | ^~~In file included from /usr/local/include/gtsam/geometry/SOn.h:23, from /usr/local/include/gtsam/geometry/SO3.h:23, from /usr/local/include/gtsam/geometry/Quaternion.h:22, from /usr/local/include/gtsam/geometry/Rot3.h:27, from /usr/local/include/gtsam/geometry/Pose3.h:24, from /home/e/Swarm-SLAM/src/cslam/include/cslam/back_end/decentralized_pgo.h:6, from /home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:1: /usr/local/include/gtsam/base/make_shared.h:62:84: note: ‘gtsam::make_shared’ 62 | needs_eigen_aligned_allocator~~/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:704:64: error: expected primary-expression before ‘>’ token 704 | auto graph = boost::make_shared();
| ^
/home/e/Swarm-SLAM/src/cslam/src/back_end/decentralized_pgo.cpp:704:66: error: expected primary-expression before ‘)’ token
704 | auto graph = boost::make_shared();
| ^
make[2]: [CMakeFiles/pose_graph_manager.dir/build.make:90: CMakeFiles/pose_graph_manager.dir/src/back_end/pose_graph_manager_node.cpp.o] Error 1
make[2]: [CMakeFiles/pose_graph_manager.dir/build.make:104: CMakeFiles/pose_graph_manager.dir/src/back_end/utils/logger.cpp.o] Error 1
make[2]: [CMakeFiles/pose_graph_manager.dir/build.make:76: CMakeFiles/pose_graph_manager.dir/src/back_end/decentralized_pgo.cpp.o] Error 1
make[1]: [CMakeFiles/Makefile2:165: CMakeFiles/pose_graph_manager.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
Failed <<< cslam [12.9s, exited with code 2]
Summary: 1 package finished [14.0s] 1 package failed: cslam 1 package had stderr output: cslam 1 package not processed