Skip to content

Commit 5c62337

Browse files
authored
Update README.md
1 parent 381edf2 commit 5c62337

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

README.md

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,26 @@ HelixNavigator is a trajectory optimization-based path planning app. You can cur
33

44
HelixNavigator provides the graphical interface to build autonomous paths, the trajectory optimizer, HelixTrajectory, takes these paths and converts them to trajectories that your robot can follow.
55

6-
## MacOS Installation
6+
## Linux and MacOS from source
77

8-
Download this repository to a working directory on your Mac.
8+
There are currently no binary distributions, so the app must be built from source to run.
99

10-
### Installing HelixNavigator
10+
Unfortunately, GitHub Actions does not support publishing Maven artifacts without authentication, so you will need a GitHub access token to build with these commands. You will have to build [TrajoptLib](https://github.com/SleipnirGroup/TrajoptLib) from source.
1111

12-
First download a [distribution](https://github.com/jlbabilino/HelixTrajectoryJ/releases/) of HelixTrajectory for MacOS. Place `helixtrajectoryj.jar` in the `libs/jar` directory of the HelixNavigator project.
12+
First, clone the repo in your working directory:
13+
```
14+
git clone https://github.com/TripleHelixProgramming/HelixNavigator.git
15+
```
1316

14-
A MacOS app can be built using `jpackage`. The Gradle script (`app/build.gradle.kts`) includes a task called `jpackage` to do this:
17+
Run the following to build the code and run it:
1518
```
16-
./gradlew app:jpackage
19+
./gradlew run
1720
```
18-
will generate generate a file called `HelixNavigator-$VERSION.dmg`. Install the app by opening the `dmg` and dragging the application into `/Applications`.
1921

20-
### Installing HelixTrajectory
22+
## Build packaged distribution:
23+
24+
Run the following to build a `.dmg` or equivalent Linux package:
2125

22-
If you try to run the app you've just built, it will crash when trying to generate trajectories. This is because the Java interface will fail to locate the native optimization code. In your distribution of HelixTrajectory, there is a zip file containing `libhelixtrajectory.dylib` and dependencies in a `lib` folder. After installing the app as `/Applications/HelixNavigator.app`, place `libhelixtrajectorycpp.dylib` in `/Applications/HelixNavigator.app/Contents/app`. Then place the dependencies in the `lib` directory into `/Applications/HelixNavigator.app/Contents/runtime/Contents/Home/lib/server`. Now the `HelixTrajectory` Java interface should be able to locate the native code.
26+
```
27+
./gradlew jpackage
28+
```

0 commit comments

Comments
 (0)