Robotics StackExchange | Archived questions

Building hector_quadrotor on lunar

I'm triyng to build hectorquadrotor on ros lunar. I know their repository (https://github.com/tu-darmstadt-ros-pkg/hectorquadrotor) hasn't been updated to work on ros lunar. However, I'm using these instructions (http://answers.ros.org/question/244776/is-it-possible-to-run-the-hector_quadrotor-demos-in-kinetic/ )

Building CXX object hector_localization/hector_pose_estimation_core/CMakeFiles/hector_pose_estimation.dir/src/pose_estimation.cpp.o
In file included from /home/bruno/rodain/Rodain.git/src/hector_localization/hector_pose_estimation_core/include/hector_pose_estimation/pose_estimation.h:33:0,
             from /home/bruno/rodain/Rodain.git/src/hector_localization/hector_pose_estimation_core/src/pose_estimation.cpp:29:
/home/bruno/rodain/Rodain.git/src/hector_localization/hector_pose_estimation_core/include/hector_pose_estimation/state.h:69:16: error: ‘vector’ in namespace ‘std’ does not name a template type
  typedef std::vector<SubStatePtr> SubStates;
            ^~~~~~
In file included from /home/bruno/rodain/Rodain.git/src/hector_localization/hector_pose_estimation_core/include/hector_pose_estimation/pose_estimation.h:33:0,
             from /home/bruno/rodain/Rodain.git/src/hector_localization/hector_pose_estimation_core/src/pose_estimation.cpp:29:
 /home/bruno/rodain/Rodain.git/src/hector_localization/hector_pose_estimation_core/include/hector_pose_estimation/state.h:141:9: error: ‘SubStates’ does not name a type
 const SubStates& getSubStates() const { return substates_; }

Asked by bxl on 2017-06-06 09:23:09 UTC

Comments

What GCC version are you using?

Asked by allenh1 on 2017-06-06 13:18:47 UTC

I'm using GCC 6.3.0

Asked by bxl on 2017-06-06 13:40:39 UTC

After investigating, I think this issue related to any ros package not yet launched for lunar release.

Asked by bxl on 2017-06-19 15:20:26 UTC

I've definitely built hector_localization on Lunar. Given your GCC version, you might try to force an earlier C++ standard at compile time (GCC 6 defaults to C++11). You can just do set(CMAKE_CXX_FLAGS "-std=c++0x")

Asked by allenh1 on 2017-06-27 11:53:26 UTC

Answers