How does catkin tell if a dependency is a system or ROS dependency?
I'm trying to get dependency tracking in our package.xml files squared away, but ROS seems to be trying to treat libeigen3-dev as a ROS package rather than a system dependency.
Specifically, I've got a package that depends on Eigen, the well-known header-only linear algebra library. Sounds like a build dependency, so:
<build_depend>libeigen3-dev</build_depend>
<export_build_depend>libeigen3-dev</export_build_depend>
Here's what happens when I run rosdep check:
~/sentry_dev_ws$ rosdep check --from-paths src --ignore-src
All system dependencies have been satisified
ERROR[ds_sim]: Cannot locate rosdep definition for [libeigen3-dev]
rosdep key : libeigen3-dev
OS name : ubuntu
OS version : xenial
Data: no data
Changing the dependency name to "eigen" fixes this, but eigen isn't an ubuntu apt package name. I have the same issue with google protobuf, and will probably have it again in the future.
I have a suspician catkin's packaging tools will prove very poweful. Just gotta figure them out first.
Thanks!