Install
The PID projects development methodology is used to manage packages to simplify their deployment and use. Based on CMake and Git, it provides:
- Common and formal structure for projects.
- Uniform project life-cycle.
- Automating build/deployment/publishing processes.
More information about PID are given in the official documentation available here.
Here are the first steps to get you started with PID. First, install the system dependencies required by PID:
On Ubuntu:
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt install build-essential gfortran git git-lfs cmake
On Archlinux:
sudo pacman -S gcc gcc-fortran git git-lfs cmake
After that, run the following steps to get and configure a PID workspace:
git clone https://github.com/lirmm/pid-workspace.git
cd pid-workspace
./pid configure
The following message should appear:
----------------------------------------------------- WARNING --------------------------------------------------
Consider sourcing the share/pid.sh script inside your workspace and use the pid command for better shell support
For the current session only run
source /home/robin/soft/PID-test/pid-workspace/share/pid.sh
Then add the above line to your shell setup script
echo "source /home/robin/soft/PID-test/pid-workspace/share/pid.sh" >> /home/robin/.bashrc
----------------------------------------------------------------------------------------------------------------
If it is the first time you deploy a workspace into your local station or if you never performed the script sourcing, simply follow the instructions given.
To make sure that all RKCL packages are known by PID, add the dedicated contribution space where everything related to RKCL is referenced:
cd pid-workspace
pid contributions cmd=add space=rkcl_contributions update=https://gite.lirmm.fr/rkcl/pid-contributions.git
Let’s define the downloaded contribution space as default. To do so, edit the file located at pid-workspace/contributions/contribution_spaces_list.cmake
with any text editor and just swap the two lines it contains to set the maximum priority to rkcl_contributions
space. Then, reconfigure the workspace:
cd pid-worskspace
pid configure
Now you can deploy existing RKCL packages (we call it <rkcl-package>
):
pid deploy package=<rkcl-package>
This command clones the <rkcl-package>
in the pid-workspace/package
folder and automatically downloads and builds the package’s dependencies before building the package itself.
Now you are ready to use RKCL, go to the next section to learn how to use an application package to control a robot.