Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

With C/C++ errors, it typically suffices to check the first error. In this case that would be:

In file included from /usr/include/c++/5/random:35:0,
                 from /usr/include/ignition/math2/ignition/math/Rand.hh:20,
                 from /usr/include/ignition/math2/ignition/math.hh:18,
                 from /usr/include/sdformat-4.0/sdf/Param.hh:34,
                 from /usr/include/sdformat-4.0/sdf/Element.hh:24,
                 from /usr/include/sdformat-4.0/sdf/sdf.hh:5,
                 from /usr/include/gazebo-7/gazebo/common/Plugin.hh:42,
                 from /home/metobom/m3_ws/src/evarobot_simulator/evarobot_gazebo/include/plugins/im_gazebo_ros_sonar.h:32,
                 from /home/metobom/m3_ws/src/evarobot_simulator/evarobot_gazebo/src/im_gazebo_ros_sonar.cpp:29:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
 #error This file requires compiler and library support \

which tells us that evarobot_simulator/evarobot_gazebo (or one of its direct dependencies) appears to require a C++11 enabled compiler.

As you tagged this kinetic, I assume you are running this on Ubuntu Xenial, which comes with GCC 5.4 by default, which afaik doesn't enable C++11 automatically.

Perhaps evarobot_simulator/evarobot_gazebo should enable C++11 in its build scripts (ie: CMakeLists.txt), but that would be something to ask the developers / maintainers.

With C/C++ errors, it typically suffices to check the first error. In this case that would be:

In file included from /usr/include/c++/5/random:35:0,
                 from /usr/include/ignition/math2/ignition/math/Rand.hh:20,
                 from /usr/include/ignition/math2/ignition/math.hh:18,
                 from /usr/include/sdformat-4.0/sdf/Param.hh:34,
                 from /usr/include/sdformat-4.0/sdf/Element.hh:24,
                 from /usr/include/sdformat-4.0/sdf/sdf.hh:5,
                 from /usr/include/gazebo-7/gazebo/common/Plugin.hh:42,
                 from /home/metobom/m3_ws/src/evarobot_simulator/evarobot_gazebo/include/plugins/im_gazebo_ros_sonar.h:32,
                 from /home/metobom/m3_ws/src/evarobot_simulator/evarobot_gazebo/src/im_gazebo_ros_sonar.cpp:29:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
 #error This file requires compiler and library support \

which tells us that evarobot_simulator/evarobot_gazebo (or one of its direct dependencies) appears to require a C++11 enabled compiler.

As you tagged this kinetic, I assume you are running this on Ubuntu Xenial, which comes with GCC 5.4 by default, which afaik doesn't enable C++11 automatically.

Perhaps evarobot_simulator/evarobot_gazebo should enable C++11 in its build scripts (ie: CMakeLists.txt), but that would be something to ask the developers / maintainers.


Edit: according to this tutorial, the instructions are for Ubuntu Indigo:

These instructions will guide you through installing software and configuring your PC to communicate with the evarobot. You should install Ubuntu 14.04 operating system and ROS Indigo to your PC.

C++11 would not be enabled there by default either, but it could be that the requirement for C++11 comes from one of the dependencies of the evarobot packages, in which case changing to a newer platform could have introduced that without the evarobot packages themselves having changed.

With C/C++ errors, it typically suffices to check the first error. In this case that would be:

In file included from /usr/include/c++/5/random:35:0,
                 from /usr/include/ignition/math2/ignition/math/Rand.hh:20,
                 from /usr/include/ignition/math2/ignition/math.hh:18,
                 from /usr/include/sdformat-4.0/sdf/Param.hh:34,
                 from /usr/include/sdformat-4.0/sdf/Element.hh:24,
                 from /usr/include/sdformat-4.0/sdf/sdf.hh:5,
                 from /usr/include/gazebo-7/gazebo/common/Plugin.hh:42,
                 from /home/metobom/m3_ws/src/evarobot_simulator/evarobot_gazebo/include/plugins/im_gazebo_ros_sonar.h:32,
                 from /home/metobom/m3_ws/src/evarobot_simulator/evarobot_gazebo/src/im_gazebo_ros_sonar.cpp:29:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
 #error This file requires compiler and library support \

which tells us that evarobot_simulator/evarobot_gazebo (or one of its direct dependencies) appears to require a C++11 enabled compiler.

As you tagged this kinetic, I assume you are running this on Ubuntu Xenial, which comes with GCC 5.4 by default, which afaik doesn't enable C++11 automatically.

Perhaps evarobot_simulator/evarobot_gazebo should enable C++11 in its build scripts (ie: CMakeLists.txt), but that would be something to ask the developers / maintainers.


Edit: according to this tutorial, the instructions are for Ubuntu Indigo:

These instructions will guide you through installing software and configuring your PC to communicate with the evarobot. You should install Ubuntu 14.04 operating system and ROS Indigo to your PC.

C++11 would not be enabled there by default either, but it could be that the requirement for C++11 comes from one of the dependencies of the evarobot packages, in which case changing to a newer platform could have introduced that without the evarobot packages themselves having changed.


Edit 2: and according to inomuh/evarobot_simulator#1, changes are needed to the various packages before they will build on Kinetic.

I'd ask the developers whether they support Ubuntu Xenial + ROS Kinetic.