ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

costmap_2d expects non-existing include dir

asked 2017-11-15 02:24:08 -0600

Chrizzl gravatar image

I am on ROS Kinetic and Ubuntu 16.04. When I call a catkin_make after cloning into my catkin_ws/src, I get the following error:

 +++ processing catkin package: 'range_sensor_layer'
-- ==> add_subdirectory(navigation_layers/range_sensor_layer)
CMake Error at /opt/ros/kinetic/share/costmap_2d/cmake/costmap_2dConfig.cmake:106 (message):
  Project 'costmap_2d' specifies '/usr/include/hdf5/openmpi' as an include
  dir, which is not found.  It does neither exist as an absolute directory
  nor in '/opt/ros/kinetic//usr/include/hdf5/openmpi'.  Ask the maintainer
  'David V.  Lu!! <>, Michael Ferguson
  <>' to fix it.
Call Stack (most recent call first):
  /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package)
  navigation_layers/range_sensor_layer/CMakeLists.txt:4 (find_package)

costmap_2d wants to have a library in this dir /usr/include/hdf5/openmpi, which does not exist. However, /usr/include/hdf5/ DOES exist, so does /usr/include/openmpi

Why does my ROS installation seem to differ from what costmap_2d expects? More important: How to fix this?

edit retag flag offensive close merge delete


I've seen issues like this happen occasionally if the include directory exists but is then removed; cmake caches the old path and then complains when it ceases to exist. You may want to try cleaning your workspace and rebuilding.

ahendrix gravatar image ahendrix  ( 2017-11-15 02:51:45 -0600 )edit

In addition to what @ahendrix writes: hdf5 is not a dependency of range_sensor_layer, nor (but I can't be certain) of one of its immediate dependencies.

It would appear the OpenMPI is then a dependency of hdf5, which does something strange (the include path doesn't make sense).

gvdhoorn gravatar image gvdhoorn  ( 2017-11-15 03:18:48 -0600 )edit

It could be that hdf5 comes in via the pcl dependency of costmap_2d (here).

Do you have a from-source build of PCL?

gvdhoorn gravatar image gvdhoorn  ( 2017-11-15 03:21:52 -0600 )edit

@gvdhoorn I wrote an answer, maybe you can shed some light on the things that are still unclear for me. That way we might help future readers ;)

Chrizzl gravatar image Chrizzl  ( 2017-11-15 03:53:12 -0600 )edit

@ahendrix Thanks for the suggestion but I already tried that before posting my qeustion here, it did nothing

Chrizzl gravatar image Chrizzl  ( 2017-11-15 04:41:12 -0600 )edit

although this question is quite old, the problem just recently popped up again:

any ideas how to properly solve this?

Felix Messmer gravatar image Felix Messmer  ( 2020-12-01 07:17:51 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2017-11-15 03:49:58 -0600

Chrizzl gravatar image

I suspect this has something to do with the issue I was facing.

sudo apt-get install libhdf5-openmpi-dev

solved my immediate issues. However: here I got new problems about not finding I think there were some bugs around that as well, but the issues differ slightly:

This issue could be fixed by

sudo apt-get install libvtkproj-dev

But I knew I was on the wrong path trying to fix the symptoms of a problem instead of the source. The new issue that appeared was that catkin could not find costmap_2d anymore.

So: I fixed all my problems with

sudo apt-get update
sudo apt-get install ros-kinetic-navigation

I don't know if the first 2 calls are completely overwritten by the apt-get update and reinstall of the navigation package (don't know if they had an effect in solving my problem). All I know is: it works now.

edit flag offensive delete link more

Question Tools



Asked: 2017-11-15 02:24:08 -0600

Seen: 1,733 times

Last updated: Dec 01 '20