Failed to install Google Cartographer
I'm trying to install google cartographer but I got some error when i tried it.
So if I type in catkin_make_isolated I get these errors:
Failed to find installed gflags CMake configuration, searching for gflags build directories exported with CMake.
-- Failed to find an installed/exported CMake configuration for gflags, will perform search for installed gflags components.
-- Found Google Flags header in: /usr/include, in namespace: google
-- No preference for use of exported glog CMake configuration set, and no hints for include/library directories provided. Defaulting to preferring an installed/exported glog CMake configuration if availab
Looking for C++ include unordered_map
-- Looking for C++ include unordered_map - not found
-- Looking for C++ include tr1/unordered_map
-- Looking for C++ include tr1/unordered_map - found
-- Found tr1/unordered_map/set in std::tr1 namespace.
-- Looking for C++ include memory
-- Looking for C++ include memory - found
-- Performing Test HAVE_SHARED_PTR_IN_STD_NAMESPACE
-- Performing Test HAVE_SHARED_PTR_IN_STD_NAMESPACE - Failed
-- Performing Test HAVE_SHARED_PTR_IN_TR1_NAMESPACE
-- Performing Test HAVE_SHARED_PTR_IN_TR1_NAMESPACE - Failed
-- Looking for C++ include tr1/memory
Scanning dependencies of target cartographer_rosbag_validate
[ 77%] Building CXX object cartographer_ros/CMakeFiles/cartographer_rosbag_validate.dir/rosbag_validate_main.cc.o
/opt/ros/kinetic/lib/liburdf.so: undefined reference to `rosconsole_bridge::RegisterOutputHandlerProxy::~RegisterOutputHandlerProxy()'
collect2: error: ld returned 1 exit status
cartographer_ros/CMakeFiles/cartographer_offline_node.dir/build.make:215: recipe for target '/home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_offline_node' failed
make[2]: *** [/home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_offline_node] Error 1
CMakeFiles/Makefile2:3532: recipe for target 'cartographer_ros/CMakeFiles/cartographer_offline_node.dir/all' failed
make[1]: *** [cartographer_ros/CMakeFiles/cartographer_offline_node.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 80%] Linking CXX executable /home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_assets_writer
/opt/ros/kinetic/lib/liburdf.so: undefined reference to `rosconsole_bridge::RegisterOutputHandlerProxy::~RegisterOutputHandlerProxy()'
collect2: error: ld returned 1 exit status
cartographer_ros/CMakeFiles/cartographer_assets_writer.dir/build.make:241: recipe for target '/home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_assets_writer' failed
make[2]: *** [/home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_assets_writer] Error 1
CMakeFiles/Makefile2:3643: recipe for target 'cartographer_ros/CMakeFiles/cartographer_assets_writer.dir/all' failed
make[1]: *** [cartographer_ros/CMakeFiles/cartographer_assets_writer.dir/all] Error 2
[ 82%] Linking CXX executable /home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_node
[ 82%] Built target cartographer_node
[ 85%] Linking CXX executable /home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_pbstream_map_publisher
[ 85%] Built target cartographer_pbstream_map_publisher
[ 87%] Linking CXX executable /home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_occupancy_grid_node
[ 87%] Built target cartographer_occupancy_grid_node
[ 90%] Linking CXX executable /home/nvidia/catkin_ws/devel_isolated/cartographer_ros/lib/cartographer_ros/cartographer_rosbag_validate
[ 90%] Built target cartographer_rosbag_validate
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
<== Failed to process package 'cartographer_ros':
Command '['/home/nvidia/catkin_ws/devel_isolated/cartographer/env.sh', 'make', '-j6', '-l6']' returned non-zero exit status 2
Reproduce this error by running:
==> cd /home/nvidia/catkin_ws/build_isolated/cartographer_ros && /home/nvidia/catkin_ws/devel_isolated/cartographer/env.sh make -j6 -l6
Command failed, exiting.
catkin_make_isolated 2668.78s user 146.34s system 407% cpu 11:30.08 total
Do you know whats going on here?
Best guess, your versions of liburdf and rosconsole_bridge have an ABI mismatch. Maybe try an upgrade or rebuild of both packages?
how can I rebuild a package?
It depends on how you're installed ROS. If you installed through apt, upgrade your apt packages. If you installed from source, go to the source workspace and rebuild and reinstall your packages. (Or if you installed through a different package manager, use its upgrade tools)
You say rebuild and reinstall. But how do I rebuild it. What does it exactly mean? Which commands do I have to type? And by source workspace you mean the catkin_ws?
Follow the same instructions you used during your initial installation of ROS. You haven't stated how you performed the initial installation, so I can't provide step-by-step commands to run.