Building rosflight_ws - namespace issues

I've cloned the rosflight_ws repository, and I've been trying to build it on my own system. I'm running Arch linux, and I know that isn't officially supported by ROS. However, I have managed to get ROS running, and most of the rosflight_ws submodules to build, so I think I'm close. After running catkin_make, the build fails at 97%, on rosplane/rosplane/src/estimator_base.cpp. The error is:

‘accumulate’ is not a member of ‘std’

I ran into a similar error with cerr not being a member of std, which I resolved by including iostream. I'm guessing this could be related to some compiler options, but I'm not sure. Any help would be appreciated.



  • That is sorta weird. I imagine that you're right, just some compiler issue. It seems odd to me that cmake hasn't included the proper standard library. I'm not terribly familiar with the way catkin modifies cmake, but I'm pretty sure that it's just a wrapper.

  • I was able to get it to build by adding this to estimator_base.h:

    #include <numeric>

    It seems to me that it shouldn't be building for anybody if that line is not there.

  • Interesting. Thanks for looking into that! I'll let the relevant developers know.

  • I could submit a pull request with these changes if it's something that would be wanted in the main repository for rosplane. There were only 2 header files that each needed one include added. I also know of someone who was building the rosflight workspace on fedora and had to add the numeric include.

  • Yeah, please do. That would be awesome.

  • OK, I submitted a pull request to rosplane and also to rosflight, since there was actually one header in each that needed to be modified.

Sign In or Register to comment.