URFD RaspberryPI 3 build

asked 2017-11-06 21:40:35 -0500

julimen5 gravatar image

updated 2017-11-07 00:58:33 -0500

gvdhoorn gravatar image

Hi everyone, I'm trying to build ros indigo in a raspberry pi 3 with raspbian jessie 8.0

Following this tutorial http://wiki.ros.org/ROSberryPi/Instal...

In the step 3.3, using this command sudo ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/indigo I get the following error:

[ 33%] Building CXX object CMakeFiles/urdf.dir/src/model.cpp.o
In file included from /home/pi/ros_catkin_ws/src/robot_model/urdf/include/urdf/model.h:43:0,
                 from /home/pi/ros_catkin_ws/src/robot_model/urdf/src/model.cpp:37:
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:89:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
 typedef std::shared_ptr<ModelInterface> ModelInterfaceSharedPtr;
              ^
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:90:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
 typedef std::shared_ptr<const ModelInterface> ModelInterfaceConstSharedPtr;
              ^
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:91:14: error: ‘weak_ptr’ in namespace ‘std’ does not name a template type
 typedef std::weak_ptr<ModelInterface> ModelInterfaceWeakPtr;
              ^
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:93:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
 typedef std::shared_ptr<Model> ModelSharedPtr;
              ^
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:94:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
 typedef std::shared_ptr<const Model> ModelConstSharedPtr;
              ^
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:95:14: error: ‘weak_ptr’ in namespace ‘std’ does not name a template type
 typedef std::weak_ptr<Model> ModelWeakPtr;
              ^
CMakeFiles/urdf.dir/build.make:62: recipe for target 'CMakeFiles/urdf.dir/src/model.cpp.o' failed
make[2]: *** [CMakeFiles/urdf.dir/src/model.cpp.o] Error 1
CMakeFiles/Makefile2:517: recipe for target 'CMakeFiles/urdf.dir/all' failed
make[1]: *** [CMakeFiles/urdf.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
<== Failed to process package 'urdf': 
  Command '['/opt/ros/indigo/env.sh', 'make', '-j2']' returned non-zero exit status 2

Reproduce this error by running:
==> cd /home/pi/ros_catkin_ws/build_isolated/urdf && /opt/ros/indigo/env.sh make -j2

Command failed, exiting.

i found #q238484 but didnt solve the problem.

Sorry about the hole print of the error, I couldnt use the code shortcut!

TY ALL

edit retag flag offensive close merge delete

Comments

It looks like you're trying to build the C++11 version on a platform that does not have C++11 enabled or doesn't support it.

Can you make sure that you are building the indigo-devel branches of all packages involved?

gvdhoorn gravatar image gvdhoorn  ( 2017-11-07 01:00:17 -0500 )edit

#q238484 would appear to be a completely unrelated problem.

gvdhoorn gravatar image gvdhoorn  ( 2017-11-07 01:00:45 -0500 )edit

I'm following step by step the tutorial, so I suppose the whole packages are in their indigo-devel. If not, how can I check it for that package?

julimen5 gravatar image julimen5  ( 2017-11-07 19:06:58 -0500 )edit

If you followed the tutorial I agree that it should already be using the correct version of the sources. And as rosinstall_generator downloads tarballs, there is no branch to check.

I'm not sure what happened. All I know is that std::shared_ptr is a C++11 feature, and that seems to be used ..

gvdhoorn gravatar image gvdhoorn  ( 2017-11-08 03:22:22 -0500 )edit

.. here without enabling it in the compiler.

gvdhoorn gravatar image gvdhoorn  ( 2017-11-08 03:24:35 -0500 )edit

I don't know how to continue with this error, also the installation crashes when this happens. Is there a way to, at least, skip that package? I don't know if maybe the no installation of the package is really necessary for the rest. Do you have any other idea?

julimen5 gravatar image julimen5  ( 2017-11-08 07:46:08 -0500 )edit

urdf is a central part of ROS, without it you can write applications, but anything that models robot or environment kinematics won't work.

gvdhoorn gravatar image gvdhoorn  ( 2017-11-08 07:47:32 -0500 )edit

I'm not a RPi expert. I'll remove my answer to encourage others to post an answer.

I would recommend to update your question text (edit it) with as much detail as possible.

gvdhoorn gravatar image gvdhoorn  ( 2017-11-08 07:48:23 -0500 )edit