# Build
[CMake][] is used for the project build.
+## Default planner
+The default planner is `T2`.
+
+## `T3` planner
+Only `T3` planner is compatible with `USE_PTHREAD` macro in `base/main.cc`
+file. When `T3` is going to be used the `USE_PTHREAD` must be set and `RRTBase`
+destructor in `base/rrtbase.cc` must be commented. Also, the commit `fd2cd6b`
+must be reverted.
+
## Prerequisities
- `cmake`
- `libjsoncpp-dev`
- `Karaman2011` - RRT* framework.
- `T1` - testing planner.
- `T2` - testing planner based on RRT*.
- - `T3` - testing planner, update T2 to bidirectional.
+ - `T3` - testing planner, update `T2` to bidirectional.
- `Klamm2015` - RRT*-Connect planner.
- `TMAX` - Specify the upper time bound in seconds.
+- `USE_GL` - Specify if GL is going to be used to plot the algorithm.
+- `USE_SLOTPLANNER` - Specify if slot planner is going to be used.
Implemented Steering procedures:
- `st1` - Steer directly to goal, no constraints.
To disable *OpenMP*, add `-DCMAKE_DISABLE_FIND_PACKAGE_OpenMP=TRUE` to `cmake`
command or to `build.sh` script.
+To add address sanitizer, please update the `CMakeLists.txt` file with:
+- `add_compile_options(-Wall -g -Wno-unknown-pragmas -fsanitize=address)`
+- `target_link_libraries(go_car_go asan)`
+
[CMake]: https://cmake.org/
# Run