This is a repository of scripts to make HAROS installation and setup easier.
See the docker directory.
For a manual installation, keep reading.
Under install you will find step-by-step scripts to install HAROS.
These assume that you have a working ROS installation and some additional dependencies, such as virtualenv and pip.
We recommend installing (and using) HAROS in a Python virtual environment, but this is completely optional.
Running step 1 will create a virtual environment for you. It can be executed without arguments,
./step1-virtualenv.shIn which case it will create a virtual environment at the root of this repository. Alternatively, you can provide it a suitable location for the virtual environment.
./install/step1-virtualenv.sh /path/to/env/parentSome features of HAROS, namely model extraction, require external dependencies, such as libclang.
Installing the front-end of clang is also useful, to ensure that your ROS code compiles with it.
Step 2 handles this for you.
./install/step2-external.shNote: This script may require root access to run apt-get.
Step 3 will install HAROS itself, along with some useful dependencies.
Note: This step requires libclang to be installed.
Make sure to activate the virtual environment before proceeding.
source /path/to/venv/bin/activate
./install/step3-haros.shSimply run the script. Depending on your environment, this may or may not require root access.
./install/step3-haros.shOnce HAROS is available, you can run step 4 to install some useful plug-ins.
If you are using a virtual environment, make sure that it remains active.
./install/step4-plugins.shThis step will create a catkin workspace and download example ROS packages to try out HAROS.
It is entirely optional.
If you opt to run it, make sure that you have clang++ available.
The script requires a path to the root of the workspace. If you are using a virtual environment, its root would be a suitable location.
./install/step5-workspace.sh /path/to/harosenvThis script will create some convenience scripts in the target directory.
The activate script is meant to be sourced, not executed.
It is a shortcut to activate your virtual environment and source the catkin devel/setup.bash of the workspace.
The catkin_make.sh is executable, and is a shortcut to run catkin_make in the workspace, passing flags to compile with clang++ and to create helper files that HAROS needs for model extraction.
After running the previous scripts, HAROS and some of its plug-ins are fully installed and ready to be used.
If you cloned the example ROS packages, either manually or with the provided script, now is a good time to try out the scripts contained in that repository. Just ensure that the virtual environment (if used) is active.