Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

‘shared_ptr’ in namespace ‘std’ does not name a template type

I'm trying to install ROS Indigo on my Raspberry Pi 3 B by following http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Indigo%20on%20Raspberry%20Pi. However, there is a error due to urdf. I'm not sure how to resolve it.

I reproduce the error by running /home/pi/ros_catkin_ws/build_isolated/urdf && sudo /opt/ros/indigo/env.sh make -j4 -l4

And, the error message is as bellow

-- Boost version: 1.55.0
-- Found the following Boost libraries:
-- thread
-- chrono
-- system
-- date_time
-- atomic
-- Using CATKIN_DEVEL_PREFIX: /home/pi/ros_catkin_ws/devel_isolated/urdf
-- Using CMAKE_PREFIX_PATH: /opt/ros/indigo
-- This workspace overlays: /opt/ros/indigo
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/pi/ros_catkin_ws/build_isolated/urdf/test_results
-- Found gtest sources under '/usr/src/gtest': gtests will be built
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.6.18
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/ros_catkin_ws/build_isolated/urdf
Scanning dependencies of target urdf
[ 33%] Building CXX object CMakeFiles/urdf.dir/src/model.cpp.o
[ 66%] Building CXX object CMakeFiles/urdf.dir/src/rosconsole_bridge.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:78: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:79: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:80:14: error: ‘weak_ptr’ in namespace ‘std’ does not name a template type
typedef std::weak_ptr<modelinterface> ModelInterfaceWeakPtr;
^
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:516: 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
```

Do you know how to resolve this?

‘shared_ptr’ in namespace ‘std’ does not name a template type

I'm trying to install ROS Indigo on my Raspberry Pi 3 B by following http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Indigo%20on%20Raspberry%20Pi. However, there is a error due to urdf. I'm not sure how to resolve it.

I reproduce the error by running

 /home/pi/ros_catkin_ws/build_isolated/urdf && sudo /opt/ros/indigo/env.sh make -j4 -l4

And, the error message is as bellow

-- Boost version: 1.55.0
1.55.0 -- Found the following Boost libraries:
-- thread
-- chrono
-- system
-- date_time
-- atomic
libraries: -- thread -- chrono -- system -- date_time -- atomic -- Using CATKIN_DEVEL_PREFIX: /home/pi/ros_catkin_ws/devel_isolated/urdf
/home/pi/ros_catkin_ws/devel_isolated/urdf -- Using CMAKE_PREFIX_PATH: /opt/ros/indigo
/opt/ros/indigo -- This workspace overlays: /opt/ros/indigo
/opt/ros/indigo -- Using PYTHON_EXECUTABLE: /usr/bin/python
/usr/bin/python -- Using Debian Python package layout
layout -- Using empy: /usr/bin/empy
/usr/bin/empy -- Using CATKIN_ENABLE_TESTING: ON
ON -- Call enable_testing()
enable_testing() -- Using CATKIN_TEST_RESULTS_DIR: /home/pi/ros_catkin_ws/build_isolated/urdf/test_results
/home/pi/ros_catkin_ws/build_isolated/urdf/test_results -- Found gtest sources under '/usr/src/gtest': gtests will be built
built -- Using Python nosetests: /usr/bin/nosetests-2.7
/usr/bin/nosetests-2.7 -- catkin 0.6.18
0.6.18 -- Configuring done
done -- Generating done
done -- Build files have been written to: /home/pi/ros_catkin_ws/build_isolated/urdf
/home/pi/ros_catkin_ws/build_isolated/urdf Scanning dependencies of target urdf
urdf [ 33%] Building CXX object CMakeFiles/urdf.dir/src/model.cpp.o
CMakeFiles/urdf.dir/src/model.cpp.o [ 66%] Building CXX object CMakeFiles/urdf.dir/src/rosconsole_bridge.cpp.o
CMakeFiles/urdf.dir/src/rosconsole_bridge.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/src/robot_model/urdf/src/model.cpp:37: /home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:78:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
type typedef std::shared_ptr<modelinterface> ModelInterfaceSharedPtr;
^
std::shared_ptr<ModelInterface> ModelInterfaceSharedPtr; ^ /home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:79:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
type typedef std::shared_ptr<const modelinterface=""> ModelInterfaceConstSharedPtr;
^
ModelInterface> ModelInterfaceConstSharedPtr; ^</span> /home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:80:14: error: ‘weak_ptr’ in namespace ‘std’ does not name a template type
type typedef std::weak_ptr<modelinterface> ModelInterfaceWeakPtr;
^
std::weak_ptr<ModelInterface> ModelInterfaceWeakPtr; ^ CMakeFiles/urdf.dir/build.make:62: recipe for target 'CMakeFiles/urdf.dir/src/model.cpp.o' failed
failed make[2]: * *** [CMakeFiles/urdf.dir/src/model.cpp.o] Error 1
1 CMakeFiles/Makefile2:516: recipe for target 'CMakeFiles/urdf.dir/all' failed
failed make[1]:
*** [CMakeFiles/urdf.dir/all] Error 2
2 Makefile:138: recipe for target 'all' failed
failed make: *
* *** [all] Error 2
```

2

Do you know how to resolve this?

‘shared_ptr’ in namespace ‘std’ does not name a template type

I'm trying to install ROS Indigo on my Raspberry Pi 3 B by following http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Indigo%20on%20Raspberry%20Pi. However, there is a error due to urdf. I'm not sure how to resolve it.

I reproduce the error by running

/home/pi/ros_catkin_ws/build_isolated/urdf && sudo /opt/ros/indigo/env.sh make -j4 -l4

And, the error message is as bellow

-- Boost version: 1.55.0
-- Found the following Boost libraries:
--   thread
--   chrono
--   system
--   date_time
--   atomic
-- Using CATKIN_DEVEL_PREFIX: /home/pi/ros_catkin_ws/devel_isolated/urdf
-- Using CMAKE_PREFIX_PATH: /opt/ros/indigo
-- This workspace overlays: /opt/ros/indigo
-- Using PYTHON_EXECUTABLE: /usr/bin/python
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/pi/ros_catkin_ws/build_isolated/urdf/test_results
-- Found gtest sources under '/usr/src/gtest': gtests will be built
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.6.18
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/ros_catkin_ws/build_isolated/urdf
Scanning dependencies of target urdf
[ 33%] Building CXX object CMakeFiles/urdf.dir/src/model.cpp.o
[ 66%] Building CXX object CMakeFiles/urdf.dir/src/rosconsole_bridge.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:78: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:79:14: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
 typedef std::shared_ptr<const ModelInterface> ModelInterfaceConstSharedPtr;
            ^</span>
^
/home/pi/ros_catkin_ws/devel_isolated/urdf/include/urdf/urdfdom_compatibility.h:80:14: error: ‘weak_ptr’ in namespace ‘std’ does not name a template type
 typedef std::weak_ptr<ModelInterface> ModelInterfaceWeakPtr;
              ^
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:516: 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

Do you know how to resolve this?