[Documentation] [TitleIndex] [WordIndex


This is used to manage cmake configurations in a global way for the ros build environment. With it, platform specific configurations can be selected from a library of existing configurations, or created and saved as a user-defined platform module.

Platform configurations define cmake variables that are often specific to your cpu and/or os structure. This includes things like cflags, lflags and install prefixes. Quite often, finding the optimal set of flags for your embedded platform is non-trivial, so if this knowledge is shared here, it can make it easier for future developers also wanting to build on the same platform.


The list of commands that can be passed to the toolchain script can be seen below:

> rosplatform --help
  rosplatform               : shows the currently set ros platform
  rosplatform clear         : clear the currently set ros platform
  rosplatform create        : create a user-defined platform configuration
  rosplatform delete        : delete a platform configuration
  rosplatform help          : print this help information
  rosplatform list          : list available eros and user-defined platforms
  rosplatform select        : interactively select a platform configuration
  rosplatform select <str>  : directly select the specified platform configuration
  rosplatform validate      : attempt to validate a platform (not yet implemented)

  Create/delete and manage the platform configuration for this ros environment
  Location of the user platform directory can be modified via --dir or more 
  permanently via /home/snorri/.ros/eros/eros.cfg.

  -h, --help         show this help message and exit
  -d DIR, --dir=DIR  location of the user platforms directory.

Creation, and deletion are interactive, selection also if you do not supply an argument. You will be prompted for the required actions.

Under the Hood


Practically, this manages what is saved in the global ros config file $ROS_ROOT/rosconfig.cmake.

Platform Libraries

There exist several pre-made platform configuration modules for popular configurations in the eros_platforms package. Alternatively, you can create and add platform modules to your own user-defined library.

2020-03-28 12:37