# Codebase Installation
## Before installation ...
Before installing this codebase, you need to make sure the correct hardware setup (such as RTOS system installation). See
system prerequisite.
## On Both Desktop And NUC
### Install dependencies
Clone this repo to the robot workspace directory on Desktop computer (e.g. `/home/USER_NAME/WORKSPACE`)
```shell
cd deoxys_control/deoxys
```
Run the `InstallPackage` file to install necessary packages.
```shell
./InstallPackage
```
During installation, you will be asked if the version of libfranka should be `0.8.0`, `0.9.0`, or `0.10.0`. Type in the version name according to the FCI version your robot has.
### On NUC
### Build the codebase
Make sure that you are in your python virtual environment before building this.
Currently I didn't handle the dynamic library linking quite well. The error-proof way is to do `export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:XXX.so`, with XXX replaced by the actual package name it's missing. You can also refer to the provided [bash script](https://github.com/UT-Austin-RPL/deoxys_control/blob/main/deoxys/auto_scripts/fix_ld_issue.sh) that handles this issue:
``` shell
make -j build_franka=1
```
### On Desktop
### Build the codebase
Make sure that you are in your python virtual environment before building this.
``` shell
make -j build_deoxys=1
```
And install all the python dependencies (feel free to create a pull request if anything is missing) from `deoxys/requirements.txt`, by doing:
```shell
pip install -U -r requirements.txt
```