ethz-asl / laser_slam

This package provides an end-to-end system to laser-based graph SLAM using laser point clouds.
BSD 3-Clause "New" or "Revised" License
251 stars 114 forks source link

ROS Melodic Support #37

Open Kripash opened 5 years ago

Kripash commented 5 years ago

I know there was no mention of support for ROS Melodic or Ubuntu 18.04 on segmap but I tried to build and I get the following errors:

laser_slam

I assume that it has to do with shared and unique pointers but I'm not entirely sure. libnabo and libpointmatcher and other dependencies are all up to date. Text of error:

In file included from /home/kripash/catkin_ws/src/laser_slam/laser_slam/include/laser_slam/laser_track.hpp:10:0, from /home/kripash/catkin_ws/src/laser_slam/laser_slam/src/laser_track.cpp:1: /home/kripash/catkin_ws/src/laser_slam/laser_slam/include/laser_slam/common.hpp: In function ‘void laser_slam::correctTransformationMatrix(PointMatcher::TransformationParameters)’: /home/kripash/catkin_ws/src/laser_slam/laser_slam/include/laser_slam/common.hpp:141:75: error: cannot convert ‘std::shared_ptr<PointMatcher::Transformation>’ to ‘PointMatcher::Transformation’ in initialization PointMatcher::get().REG(Transformation).create("RigidTransformation"); ^ /home/kripash/catkin_ws/src/laser_slam/laser_slam/src/laser_track.cpp: In constructor ‘laser_slam::LaserTrack::LaserTrack(const laser_slam::LaserTrackParams&, unsigned int)’: /home/kripash/catkin_ws/src/laser_slam/laser_slam/src/laser_track.cpp:33:95: error: cannot convert ‘std::shared_ptr<PointMatcher::Transformation>’ to ‘PointMatcher::Transformation’ in assignment rigidtransformation = PointMatcher::get().REG(Transformation).create("RigidTransformation"); ^ In file included from /home/kripash/catkin_ws/src/laser_slam/laser_slam/include/laser_slam/incremental_estimator.hpp:10:0, from /home/kripash/catkin_ws/src/laser_slam/laser_slam/src/incremental_estimator.cpp:1: /home/kripash/catkin_ws/src/laser_slam/laser_slam/include/laser_slam/common.hpp: In function ‘void laser_slam::correctTransformationMatrix(PointMatcher::TransformationParameters)’: /home/kripash/catkin_ws/src/laser_slam/laser_slam/include/laser_slam/common.hpp:141:75: error: cannot convert ‘std::shared_ptr<PointMatcher::Transformation>’ to ‘PointMatcher::Transformation*’ in initialization PointMatcher::get().REG(Transformation).create("RigidTransformation"); ^ laser_slam/laser_slam/CMakeFiles/laser_slam.dir/build.make:62: recipe for target 'laser_slam/laser_slam/CMakeFiles/laser_slam.dir/src/laser_track.cpp.o' failed make[2]: [laser_slam/laser_slam/CMakeFiles/laser_slam.dir/src/laser_track.cpp.o] Error 1 make[2]: Waiting for unfinished jobs.... laser_slam/laser_slam/CMakeFiles/laser_slam.dir/build.make:86: recipe for target 'laser_slam/laser_slam/CMakeFiles/laser_slam.dir/src/incremental_estimator.cpp.o' failed make[2]: [laser_slam/laser_slam/CMakeFiles/laser_slam.dir/src/incremental_estimator.cpp.o] Error 1 CMakeFiles/Makefile2:3199: recipe for target 'laser_slam/laser_slam/CMakeFiles/laser_slam.dir/all' failed make[1]: [laser_slam/laser_slam/CMakeFiles/laser_slam.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2 Invoking "make -j8 -l8" failed