In order to make the SoT working all the environment variables in section Important environment variables need to be setup appropriatly. They need to be all coherent.
More precisely the order of the paths in the variables specify the order to search for libraries and plugins. They are important because a computer might have different (and often conflicting) libraries version. They need to be consistent together.
A script to realize the setup and to be set in your .bashrc file is given in Shell file
This will set the following environment variables according to the argument. All of the variables are important and need to be setup correctly. As an example it we assume that you want to specify your environnement towards /opt/openrobots:
CMAKE_PREFIX_PATH=/opt/openrobots:/whatever_was_before
LD_LIBRARY_PATH=/opt/openrobots/lib:/opt/openrobots/lib/dynamic-graph-plugins:/whatever_was_before
PATH=/opt/openrobots/bin:/whatever_was_before
PKG_CONFIG_PATH=/opt/openrobots/lib/pkgconfig:/whatever_was_before
PYTHON_PATH=/opt/openrobots/lib/site-package
ROS_PACKAGE_PATH=/opt/openrobots/share:/whatever_was_before
To setup the environment variables you can use the script setup-sot.sh which can be download using:
wget https://raw.githubusercontent.com/stack-of-tasks/sot-doc/master/bash/setup-sot.sh
To use it with the binary packages installed in /opt/openrobots:
source setup-sot.sh -p /opt/openrobots -r
Once you typed this command you can check that the previous variables have the string "/opt/openrobots". The order set the priority.
The directory /opt/openrobots will have the highest priority with respect to all the precited variables. This equivalent to workspace chaining in ROS.
It is recommended to handle this with aliases in your .bashrc file. You can for instance add the following line to your .bash_aliases
alias sop="source setup-sot.sh -p /opt/openrobots -r"