I am trying to use the gmapping SLAM functionalities to map the surroundings of my robot and for that I am using a Hokuyo lidar URG-04LX on a Beaglebone Black A5C with Ubuntu 18.04 installed and ROS Melodic. I know that many of the packages are not out yet for ROS Melodic but I tried many SLAM options but none of them seem to work with it. I was hoping gmapping would do the do but I am stuck at installing the package.
When I try to build from source with a catkin_make (after having cloned the git folder into my catkin workspace src folder), it crashes at 76% due to slam_gmapping_nodelet:
[ 56%] Building CXX object openslam_gmapping/gridfastslam/CMakeFiles/gridfastslam.dir/gridslamprocessor_tree.cpp.o
In file included from /usr/include/c++/7/vector:69:0,
from /home/beagle/catkin_test/src/openslam_gmapping/include/gmapping/utils/stat.h:4,
from /home/beagle/catkin_test/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp:9:
/usr/include/c++/7/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {double}; _Tp = double; _Alloc = std::allocator]’:
/usr/include/c++/7/bits/vector.tcc:105:21: note: parameter passing for argument of type ‘gnu_cxx::__normal_iterator<double*, std::vector >’ changed in GCC 7.1
_M_realloc_insert(end(), std::forward<_Args>(args)...);
/usr/include/c++/7/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {double}; _Tp = double; _Alloc = std::allocator<double>]’:
/usr/include/c++/7/bits/vector.tcc:394:7: note: parameter passing for argument of type ‘std::vector<double>::iterator {aka __gnu_cxx::__normal_iterator<double*, std::vector<double> >}’ changed in GCC 7.1
vector<_Tp, _Alloc>::
^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/7/deque:63:0,
from /home/beagle/catkin_test/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp:2:
/usr/include/c++/7/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = double*; _ForwardIterator = double*; _Allocator = std::allocator<double>]’:
/usr/include/c++/7/bits/stl_uninitialized.h:312:69: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
_GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR(__last), __result, __alloc);
^
/usr/include/c++/7/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<double*>; _ForwardIterator = double*; _Tp = double]’:
/usr/include/c++/7/bits/stl_uninitialized.h:287:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_uninitialized.h:287:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
/usr/include/c++/7/bits/stl_uninitialized.h:289:63: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
{ return std::uninitialized_copy(__first, __last, __result); }
^
/usr/include/c++/7/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<double*>; _ForwardIterator = double*]’:
/usr/include/c++/7/bits/stl_uninitialized.h:115:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
uninitialized_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_uninitialized.h:115:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
/usr/include/c++/7/bits/stl_uninitialized.h:134:41: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__uninit_copy(__first, __last, __result);
^
/usr/include/c++/7/bits/stl_uninitialized.h: In static member function ‘static _ForwardIterator std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<double*>; _ForwardIterator = double*]’:
/usr/include/c++/7/bits/stl_uninitialized.h:99:9: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__uninit_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_uninitialized.h:99:9: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
/usr/include/c++/7/bits/stl_uninitialized.h:101:53: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
{ return std::copy(__first, __last, __result); }
^
In file included from /usr/include/c++/7/bits/char_traits.h:39:0,
from /usr/include/c++/7/string:40,
from /home/beagle/catkin_test/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp:1:
/usr/include/c++/7/bits/stl_algobase.h: In function ‘_OI std::copy(_II, _II, _OI) [with _II = std::move_iterator<double*>; _OI = double*]’:
/usr/include/c++/7/bits/stl_algobase.h:446:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
copy(_II __first, _II __last, _OI __result)
^~~~
/usr/include/c++/7/bits/stl_algobase.h:446:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
In file included from /usr/include/c++/7/bits/stl_algobase.h:67:0,
from /usr/include/c++/7/bits/char_traits.h:39,
from /usr/include/c++/7/string:40,
from /home/beagle/catkin_test/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp:1:
/usr/include/c++/7/bits/stl_iterator.h: In function ‘decltype (std::__miter_base(__it.base())) std::__miter_base(std::move_iterator<_IteratorL>) [with _Iterator = double*]’:
/usr/include/c++/7/bits/stl_iterator.h:1241:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__miter_base(move_iterator<_Iterator> __it)
^~~~~~~~~~~~
[ 60%] Building CXX object openslam_gmapping/gridfastslam/CMakeFiles/gridfastslam.dir/motionmodel.cpp.o
[ 64%] Linking CXX shared library /home/beagle/catkin_test/devel/lib/libgridfastslam.so
[ 64%] Built target gridfastslam
Scanning dependencies of target sensor_odometry
[ 64%] Building CXX object openslam_gmapping/sensor/sensor_odometry/CMakeFiles/sensor_odometry.dir/odometryreading.cpp.o
[ 68%] Building CXX object openslam_gmapping/sensor/sensor_odometry/CMakeFiles/sensor_odometry.dir/odometrysensor.cpp.o
[ 72%] Linking CXX shared library /home/beagle/catkin_test/devel/lib/libsensor_odometry.so
[ 72%] Built target sensor_odometry
Scanning dependencies of target slam_gmapping_nodelet
[ 76%] Building CXX object slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/src/slam_gmapping.cpp.o
In file included from /usr/include/boost/bind/bind.hpp:2172:0,
from /usr/include/boost/bind.hpp:22,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind_mf_cc.hpp: In function ‘boost::_bi::bind_t<R, boost::_mfi::mf1<R, T, A1>, typename boost::_bi::list_av_2<A1, A2>::type> boost::bind(R (T::*)(B1), A1, A2) [with R = void; T = SlamGMapping; B1 = double; A1 = SlamGMapping*; A2 = double]’:
/usr/include/boost/bind/bind_mf_cc.hpp:69:64: note: parameter passing for argument of type ‘F {aka boost::_mfi::mf1<void, SlamGMapping, double>}’ changed in GCC 7.1
return _bi::bind_t<R, F, list_type>(F(f), list_type(a1, a2));
^
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind.hpp: In constructor ‘boost::_bi::bind_t<R, F, L>::bind_t(F, const L&) [with R = void; F = boost::_mfi::mf1<void, SlamGMapping, double>; L = boost::_bi::list2<boost::_bi::value<SlamGMapping*>, boost::_bi::value<double> >]’:
/usr/include/boost/bind/bind.hpp:1287:5: note: parameter passing for argument of type ‘boost::_mfi::mf1<void, SlamGMapping, double>’ changed in GCC 7.1
bind_t( F f, L const & l ): f_( f ), l_( l ) {}
^~~~~~
/usr/include/boost/bind/bind_cc.hpp: In function ‘boost::_bi::bind_t<R, R (*)(B1), typename boost::_bi::list_av_1<A1>::type> boost::bind(R (*)(B1), A1) [with R = ros::SerializedMessage; B1 = const std_msgs::Float64_<std::allocator<void> >&; A1 = boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >]’:
/usr/include/boost/bind/bind_cc.hpp:26:5: note: parameter passing for argument of type ‘boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >’ changed in GCC 7.1
BOOST_BIND(BOOST_BIND_ST R (BOOST_BIND_CC *f) (B1), A1 a1)
^
In file included from /usr/include/boost/bind/bind.hpp:2126:0,
from /usr/include/boost/bind.hpp:22,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind_cc.hpp:30:58: note: parameter passing for argument of type ‘boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >’ changed in GCC 7.1
return _bi::bind_t<R, F, list_type> (f, list_type(a1));
^
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind_cc.hpp: In function ‘boost::_bi::bind_t<R, R (*)(B1), typename boost::_bi::list_av_1<A1>::type> boost::bind(R (*)(B1), A1) [with R = ros::SerializedMessage; B1 = const nav_msgs::OccupancyGrid_<std::allocator<void> >&; A1 = boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >]’:
/usr/include/boost/bind/bind_cc.hpp:26:5: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >’ changed in GCC 7.1
BOOST_BIND(BOOST_BIND_ST R (BOOST_BIND_CC *f) (B1), A1 a1)
^
In file included from /usr/include/boost/bind/bind.hpp:2126:0,
from /usr/include/boost/bind.hpp:22,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind_cc.hpp:30:58: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >’ changed in GCC 7.1
return _bi::bind_t<R, F, list_type> (f, list_type(a1));
^
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind_cc.hpp: In function ‘boost::_bi::bind_t<R, R (*)(B1), typename boost::_bi::list_av_1<A1>::type> boost::bind(R (*)(B1), A1) [with R = ros::SerializedMessage; B1 = const nav_msgs::MapMetaData_<std::allocator<void> >&; A1 = boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >]’:
/usr/include/boost/bind/bind_cc.hpp:26:5: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >’ changed in GCC 7.1
BOOST_BIND(BOOST_BIND_ST R (BOOST_BIND_CC *f) (B1), A1 a1)
^
In file included from /usr/include/boost/bind/bind.hpp:2126:0,
from /usr/include/boost/bind.hpp:22,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind_cc.hpp:30:58: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >’ changed in GCC 7.1
return _bi::bind_t<R, F, list_type> (f, list_type(a1));
^
In file included from /usr/include/c++/7/vector:63:0,
from /usr/include/boost/math/special_functions/math_fwd.hpp:26,
from /usr/include/boost/math/special_functions/round.hpp:15,
from /opt/ros/melodic/include/ros/time.h:58,
from /opt/ros/melodic/include/ros/ros.h:38,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/c++/7/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = double*; _ForwardIterator = double*; _Allocator = std::allocator<double>]’:
/usr/include/c++/7/bits/stl_uninitialized.h:312:69: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
_GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR(__last), __result, __alloc);
^
In file included from /usr/include/boost/bind.hpp:22:0,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/bind.hpp: In constructor ‘boost::_bi::list1<A1>::list1(A1) [with A1 = boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >]’:
/usr/include/boost/bind/bind.hpp:231:14: note: parameter passing for argument of type ‘boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >’ changed in GCC 7.1
explicit list1( A1 a1 ): base_type( a1 ) {}
^~~~~
/usr/include/boost/bind/bind.hpp:231:44: note: parameter passing for argument of type ‘boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >’ changed in GCC 7.1
explicit list1( A1 a1 ): base_type( a1 ) {}
^
/usr/include/boost/bind/bind.hpp: In constructor ‘boost::_bi::list1<A1>::list1(A1) [with A1 = boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >]’:
/usr/include/boost/bind/bind.hpp:231:14: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >’ changed in GCC 7.1
explicit list1( A1 a1 ): base_type( a1 ) {}
^~~~~
/usr/include/boost/bind/bind.hpp:231:44: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >’ changed in GCC 7.1
explicit list1( A1 a1 ): base_type( a1 ) {}
^
/usr/include/boost/bind/bind.hpp: In constructor ‘boost::_bi::list1<A1>::list1(A1) [with A1 = boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >]’:
/usr/include/boost/bind/bind.hpp:231:14: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >’ changed in GCC 7.1
explicit list1( A1 a1 ): base_type( a1 ) {}
^~~~~
/usr/include/boost/bind/bind.hpp:231:44: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >’ changed in GCC 7.1
explicit list1( A1 a1 ): base_type( a1 ) {}
^
In file included from /usr/include/c++/7/vector:63:0,
from /usr/include/boost/math/special_functions/math_fwd.hpp:26,
from /usr/include/boost/math/special_functions/round.hpp:15,
from /opt/ros/melodic/include/ros/time.h:58,
from /opt/ros/melodic/include/ros/ros.h:38,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/c++/7/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<double*>; _ForwardIterator = double*; _Tp = double]’:
/usr/include/c++/7/bits/stl_uninitialized.h:287:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_uninitialized.h:287:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
/usr/include/c++/7/bits/stl_uninitialized.h:289:63: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
{ return std::uninitialized_copy(__first, __last, __result); }
^
In file included from /usr/include/boost/bind/bind.hpp:47:0,
from /usr/include/boost/bind.hpp:22,
from /opt/ros/melodic/include/ros/publisher.h:35,
from /opt/ros/melodic/include/ros/node_handle.h:32,
from /opt/ros/melodic/include/ros/ros.h:45,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/boost/bind/storage.hpp: In constructor ‘boost::_bi::storage1<A1>::storage1(A1) [with A1 = boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >]’:
/usr/include/boost/bind/storage.hpp:42:14: note: parameter passing for argument of type ‘boost::reference_wrapper<const std_msgs::Float64_<std::allocator<void> > >’ changed in GCC 7.1
explicit storage1( A1 a1 ): a1_( a1 ) {}
^~~~~~~~
/usr/include/boost/bind/storage.hpp: In constructor ‘boost::_bi::storage1<A1>::storage1(A1) [with A1 = boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >]’:
/usr/include/boost/bind/storage.hpp:42:14: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::OccupancyGrid_<std::allocator<void> > >’ changed in GCC 7.1
/usr/include/boost/bind/storage.hpp: In constructor ‘boost::_bi::storage1<A1>::storage1(A1) [with A1 = boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >]’:
/usr/include/boost/bind/storage.hpp:42:14: note: parameter passing for argument of type ‘boost::reference_wrapper<const nav_msgs::MapMetaData_<std::allocator<void> > >’ changed in GCC 7.1
In file included from /usr/include/c++/7/vector:63:0,
from /usr/include/boost/math/special_functions/math_fwd.hpp:26,
from /usr/include/boost/math/special_functions/round.hpp:15,
from /opt/ros/melodic/include/ros/time.h:58,
from /opt/ros/melodic/include/ros/ros.h:38,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.h:19,
from /home/beagle/catkin_test/src/slam_gmapping/gmapping/src/slam_gmapping.cpp:108:
/usr/include/c++/7/bits/stl_uninitialized.h: In function ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<double*>; _ForwardIterator = double*]’:
/usr/include/c++/7/bits/stl_uninitialized.h:115:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
uninitialized_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_uninitialized.h:115:5: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
/usr/include/c++/7/bits/stl_uninitialized.h:134:41: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__uninit_copy(__first, __last, __result);
^
/usr/include/c++/7/bits/stl_uninitialized.h: In static member function ‘static _ForwardIterator std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<double*>; _ForwardIterator = double*]’:
/usr/include/c++/7/bits/stl_uninitialized.h:99:9: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
__uninit_copy(_InputIterator __first, _InputIterator __last,
^~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_uninitialized.h:99:9: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
/usr/include/c++/7/bits/stl_uninitialized.h:101:53: note: parameter passing for argument of type ‘std::move_iterator<double*>’ changed in GCC 7.1
{ return std::copy(__first, __last, __result); }
^
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.
slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/build.make:62: recipe for target 'slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/src/slam_gmapping.cpp.o' failed
make[2]: *** [slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/src/slam_gmapping.cpp.o] Error 4
CMakeFiles/Makefile2:4462: recipe for target 'slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/all' failed
make[1]: *** [slam_gmapping/gmapping/CMakeFiles/slam_gmapping_nodelet.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j1 -l1" failed
If anyone has a clue of why the building is failing or if you encountered the same issue and found a solution, I'll be glad to hear from you.
Thanks for any help given!
Hi!
I am trying to use the gmapping SLAM functionalities to map the surroundings of my robot and for that I am using a Hokuyo lidar URG-04LX on a Beaglebone Black A5C with Ubuntu 18.04 installed and ROS Melodic. I know that many of the packages are not out yet for ROS Melodic but I tried many SLAM options but none of them seem to work with it. I was hoping gmapping would do the do but I am stuck at installing the package.
When I try to build from source with a catkin_make (after having cloned the git folder into my catkin workspace src folder), it crashes at 76% due to slam_gmapping_nodelet: [ 56%] Building CXX object openslam_gmapping/gridfastslam/CMakeFiles/gridfastslam.dir/gridslamprocessor_tree.cpp.o In file included from /usr/include/c++/7/vector:69:0, from /home/beagle/catkin_test/src/openslam_gmapping/include/gmapping/utils/stat.h:4, from /home/beagle/catkin_test/src/openslam_gmapping/gridfastslam/gridslamprocessor_tree.cpp:9: /usr/include/c++/7/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {double}; _Tp = double; _Alloc = std::allocator]’:
/usr/include/c++/7/bits/vector.tcc:105:21: note: parameter passing for argument of type ‘gnu_cxx::__normal_iterator<double*, std::vector >’ changed in GCC 7.1
_M_realloc_insert(end(), std::forward<_Args>( args)...);