update README

This commit is contained in:
Hari Nair
2025-04-27 11:18:53 -04:00
parent 1ee86517cf
commit 44797eaab3
2 changed files with 26 additions and 10 deletions

View File

@@ -1,7 +1,7 @@
# Terrasaur # Terrasaur
Terrasaur is a suite of programs written in Java and C++. These stand-alone Terrasaur is a suite of programs written in Java and C++. These standalone
command line analysis and shape model manipulation programs that complement the command line analysis and shape model manipulation programs complement the
[Small Body Mapping Tool](https://sbmt.jhuapl.edu/) and create data products that [Small Body Mapping Tool](https://sbmt.jhuapl.edu/) and create data products that
are well-suited to being visualized in the SBMT GUI. Among other functions, are well-suited to being visualized in the SBMT GUI. Among other functions,
these programs facilitate the building of digital terrain models (DTMs) of these programs facilitate the building of digital terrain models (DTMs) of
@@ -20,21 +20,26 @@ The Terrasaur package requires Java 21 or later. Some freely available versions
* [Eclipse Temurin](https://adoptium.net/) * [Eclipse Temurin](https://adoptium.net/)
* [OpenJDK](https://jdk.java.net/). Most Linux distributions and HomeBrew have OpenJDK packages. * [OpenJDK](https://jdk.java.net/). Most Linux distributions and HomeBrew have OpenJDK packages.
### Download the latest release
Precompiled release packages can be found on [GitHub](https://github.com/JHUAPL/Terrasaur/releases)
### Build the package ### Build the package
This is an optional step if you don't want to use the prebuilt If you don't want to use the prebuilt package, check out the code:
package. Check out the code:
git clone https://github.com/JHUAPL/Terrasaur.git git clone https://github.com/JHUAPL/Terrasaur.git
The 3rd party executables and libraries are assumed to exist in The 3rd party executables and libraries are assumed to exist in
`3rd-party/$(uname -s)_$(uname -m)` (e.g. `3rd-party/Darwin_x86_64` on an `3rd-party/$(uname -s)_$(uname -m)` (e.g. `3rd-party/Darwin_x86_64` on an
Intel macOS machine). The script to build the 3rd party products is in the Intel macOS machine). The script to build the 3rd party products is in the
`support-libraries` directory. `support-libraries` directory.
cd support-libraries cd support-libraries
./buildAll.bash ../3rd-party/$(uname -s)_$(uname -m) ./buildAll.bash ../3rd-party/$(uname -s)_$(uname -m)
You can instead use the precompiled support libraries from a release package to save a lot of time. See the `support-libraries` [README](./support-libraries/README.md).
Maven must be installed to build the software. Once the `3rd-party` Maven must be installed to build the software. Once the `3rd-party`
directory has been built, compile the Terrasaur package using the directory has been built, compile the Terrasaur package using the
`mkPackage.bash` script: `mkPackage.bash` script:

View File

@@ -1,12 +1,26 @@
# Supporting libraries for Terrasaur # Supporting libraries for Terrasaur
The Terrasaur code is available at [GitHub](https://github.com/JHUAPL/Terrasaur.git). This directory contains supporting libraries needed to build Terrasaur. The Terrasaur code is available at [GitHub](https://github.com/JHUAPL/Terrasaur.git). This directory contains these supporting libraries needed to build Terrasaur:
* [GSL](https://www.gnu.org/software/gsl/) * [GSL](https://www.gnu.org/software/gsl/)
* [SPICE](https://naif.jpl.nasa.gov) * [SPICE](https://naif.jpl.nasa.gov)
* [VTK](https://vtk.org) * [VTK](https://vtk.org)
* [OpenCV](https://opencv.org/) * [OpenCV](https://opencv.org/)
# Shortcut
The support code may take a long time to compile (several hours in some cases). You can instead download a binary package for your architecture from [GitHub](https://github.com/JHUAPL/Terrasaur/releases). The compiled 3rd party products are found in the `lib` directory (e.g. `Terrasaur-YYYY.MM.DD/lib/Darwin_arm64`). Copy or move this directory to your source directory under `3rd-party`. For example:
```
mkdir 3rd-party
tar xfz Terrasaur-YYYY.MM.DD.tar.gz
ln -s Terrasaur-YYYY.MM.DD/lib/Darwin_arm64 3rd-party/
```
You can now compile the Terrasaur code using the released support files.
# Building the code
## Prerequisites ## Prerequisites
You may need to install the following packages with You may need to install the following packages with
@@ -21,10 +35,7 @@ Each subdirectory has a build script which takes a single argument,
which is the installation location for the compiled libraries and which is the installation location for the compiled libraries and
executables. executables.
The `buildAll.bash` script will build and install the libraries and executables The `buildAll.bash` script will build and install the libraries and executables to the desired location. For example, this would install everything in a directory named for your system architecture (e.g. 3rd-party/Darwin_x86_64 on an intel macOS system):
to the desired location. For example, this would install everything in a
directory named for your system architecture (e.g. 3rd-party/Darwin_x86_64 on
an intel macOS system):
``` ```
./buildAll.bash ../3rd-party/$(uname -s)_$(uname -m) ./buildAll.bash ../3rd-party/$(uname -s)_$(uname -m)