Skip to content
Snippets Groups Projects
Fabian Reister's avatar
Fabian Reister authored
afd13734
History

ArmarX Setup

Setup and maintenance tools for ArmarX and its dependencies.

Development Setup

git clone git@gitlab.com:ArmarX/meta/setup.git armarx-setup
cd armarx-setup/

# Create the virtual python environment by either (1) or (2):

# (1) Using Python Poetry
poetry install

# (2) Using pip and virtalenv
python3 -m venv .venv
pip3 install -r requirements.txt

Usage

See which commands are available:

./bin/armarx-setup --help

./bin/armarx-setup is a bash script which first activates the python environment, then calls the python script ./armarx-setup in the root directory if this repository (.).

If you have activated the python environment, you can also directly call ./armarx-setup.

To be able to run armarx-setup from anywhere, add this line to your ~/.bashrc:

export PATH=~/armarx-setup/bin:$PATH

Create a new workspace:

armarx-setup new

Use upgrade command to

  • install required apt packages (you are asked beforehand)
  • clone/update repositories
  • prepare (e.g., run cmake)
  • build (e.g., run cmake --build)
  • install

for all modules and their (direct and indirect) dependencies.

armarx-setup upgrade

To add or remove modules:

armarx-setup add module/path
armarx-setup remove module/path
# e.g.:
armarx-setup add armarx/ArmarXCore

Modules paths are paths to .json files in the data/modules directory.

Use Ninja instead of Unix Makefiles

To use Ninja as cmake generator, set the environment variable CMAKE_GENERATOR when running upgrade:

CMAKE_GENERATOR=Ninja armarx-setup upgrade

If you ran upgrade or prepare before, wipe all build directories first:

armarx-setup clean