‘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/Instal... . 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?