Dependencies - olinrobotics/gravl GitHub Wiki

Introduction

The CMAKELISTS.txt file is to declare dependencies and build/test rules. The package.xml file is also used to declare dependency informaion, but goes as far as to declare runtime dependencies as well as build dependencies. There is overlap between the two, but dependencies should be up-to-date in both.

This page will outline use for dependencies, as further usage is better left to the main documentation.

Usage

Near the top of the CMAKELISTS.txt there should be a block resembling this:

find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
  ...
)

Simply put the dependent packages in that block and run rosdep install --from-paths ~/catkin_ws/src/gravl to make sure the dependencies are declared correctly or to install dependencies on a new system.

For the package.xml, there should be a block like this near the bottom:

<build_depend>tf</build_depend>
<build_depend>cv_bridge</build_depend>
...
<run_depend>sensor_msgs</run_depend>
<run_depend>geometry_msgs</run_depend>

Simply add the name under all categories (build or run dependencies) to which the package applies.

Helpful Links

⚠️ **GitHub.com Fallback** ⚠️