Error struct _Rb_tree_iterator while compiling
Posted by mcb9216 on
URL: http://official-rtab-map-forum.206.s1.nabble.com/Error-struct-Rb-tree-iterator-while-compiling-tp1134.html
Hello, I have this error while doing the step "make -j4". Please help me, I really don't what else I could do
-- Info :
-- Version : 0.11.2
-- CMAKE_INSTALL_PREFIX = /usr/local
-- CMAKE_BUILD_TYPE = Release
-- BUILD_APP = ON
-- BUILD_TOOLS = ON
-- BUILD_EXAMPLES = ON
-- BUILD_SHARED_LIBS = ON
-- CMAKE_CXX_FLAGS = -fmessage-length=0 -Wno-deprecated -fopenmp
-- With OpenCV 3 xfeatures2d module (SIFT/SURF/BRIEF/FREAK) = YES (License: Non commercial)
-- With Freenect = YES (License: Apache v2 and/or GPLv2)
-- With OpenNI2 = YES (License: Apache v2)
-- With Freenect2 = YES (License: Apache v2 and/or GPLv2)
-- With dc1394 = YES (License: LGPL)
-- With FlyCapture2/Triclops = NO (Point Grey SDK not found)
-- With TORO = YES (License: Creative Commons [Attribution-NonCommercial-ShareAlike])
-- With g2o = NO (g2o not found)
-- With GTSAM = NO (GTSAM not found)
-- With VERTIGO = YES (License: GPLv3)
-- With cvsba = NO (cvsba not found)
-- With Qt4 = YES (License: Open Source or Commercial)
-- --------------------------------------------
-- Configuring done
-- Generating done
-- Build files have been written to: /home/cristina/rtabmap/build
cristina@cristina-H81M-H:~/rtabmap/build$ make
[ 6%] Built target rtabmap_utilite
[ 6%] Built target res_tool
[ 7%] Building CXX object corelib/src/CMakeFiles/rtabmap_core.dir/OdometryF2M.cpp.o
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp: In member function ‘virtual rtabmap::Transform rtabmap::OdometryF2M::computeTransform(rtabmap::SensorData&, const rtabmap::Transform&, rtabmap::OdometryInfo*)’:
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:308:15: error: no match for ‘operator=’ (operand types are ‘std::multimap<int, cv::Point3_<float> >::iterator {aka std::_Rb_tree_iterator<std::pair<const int, cv::Point3_<float> > >}’ and ‘void’)
iter = mapPoints.erase(iter);
^
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:308:15: note: candidate is:
In file included from /usr/include/c++/4.8/map:60:0,
from /home/cristina/rtabmap/corelib/src/../include/rtabmap/core/OdometryInfo.h:31,
from /home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:28:
/usr/include/c++/4.8/bits/stl_tree.h:157:12: note: std::_Rb_tree_iterator<std::pair<const int, cv::Point3_<float> > >& std::_Rb_tree_iterator<std::pair<const int, cv::Point3_<float> > >::operator=(const std::_Rb_tree_iterator<std::pair<const int, cv::Point3_<float> > >&)
struct _Rb_tree_iterator
^
/usr/include/c++/4.8/bits/stl_tree.h:157:12: note: no known conversion for argument 1 from ‘void’ to ‘const std::_Rb_tree_iterator<std::pair<const int, cv::Point3_<float> > >&’
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:309:29: error: no match for ‘operator=’ (operand types are ‘std::multimap<int, cv::Mat>::iterator {aka std::_Rb_tree_iterator<std::pair<const int, cv::Mat> >}’ and ‘void’)
iterMapDescriptors = mapDescriptors.erase(iterMapDescriptors);
^
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:309:29: note: candidate is:
In file included from /usr/include/c++/4.8/map:60:0,
from /home/cristina/rtabmap/corelib/src/../include/rtabmap/core/OdometryInfo.h:31,
from /home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:28:
/usr/include/c++/4.8/bits/stl_tree.h:157:12: note: std::_Rb_tree_iterator<std::pair<const int, cv::Mat> >& std::_Rb_tree_iterator<std::pair<const int, cv::Mat> >::operator=(const std::_Rb_tree_iterator<std::pair<const int, cv::Mat> >&)
struct _Rb_tree_iterator
^
/usr/include/c++/4.8/bits/stl_tree.h:157:12: note: no known conversion for argument 1 from ‘void’ to ‘const std::_Rb_tree_iterator<std::pair<const int, cv::Mat> >&’
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:310:23: error: no match for ‘operator=’ (operand types are ‘std::multimap<int, cv::KeyPoint>::iterator {aka std::_Rb_tree_iterator<std::pair<const int, cv::KeyPoint> >}’ and ‘void’)
iterMapWords = mapWords.erase(iterMapWords);
^
/home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:310:23: note: candidate is:
In file included from /usr/include/c++/4.8/map:60:0,
from /home/cristina/rtabmap/corelib/src/../include/rtabmap/core/OdometryInfo.h:31,
from /home/cristina/rtabmap/corelib/src/OdometryF2M.cpp:28:
/usr/include/c++/4.8/bits/stl_tree.h:157:12: note: std::_Rb_tree_iterator<std::pair<const int, cv::KeyPoint> >& std::_Rb_tree_iterator<std::pair<const int, cv::KeyPoint> >::operator=(const std::_Rb_tree_iterator<std::pair<const int, cv::KeyPoint> >&)
struct _Rb_tree_iterator
^
/usr/include/c++/4.8/bits/stl_tree.h:157:12: note: no known conversion for argument 1 from ‘void’ to ‘const std::_Rb_tree_iterator<std::pair<const int, cv::KeyPoint> >&’
make[2]: *** [corelib/src/CMakeFiles/rtabmap_core.dir/OdometryF2M.cpp.o] Error 1
make[1]: *** [corelib/src/CMakeFiles/rtabmap_core.dir/all] Error 2
make: *** [all] Error 2