[Last Change: 15 Dec 2025 (rev 48) —
Page History]
SAOTrace Version 2 Installation
The current version of SAOTrace is version 2.1.0
Release notes are available
here
.
Availability
SAOTrace is available as source code, and as packaged executables and libraries for:
| OS |
CPU Architecture |
Form |
| Linux |
x86 |
archives, packages, container archives |
| MacOS |
x86 |
archive |
| MacOS |
arm64 |
archive |
Archives contain compiled executables and libraries, as well as the raytrace configuration database. They are designed to be installed anywhere on your system. They require a handful of other standard packages to be installed. These are usually already installed, but if not, will require administrator privileges.
Packages may be installed by the operating system's package management (e.g. for Linux,
apt,
yum, or
dnf). Administrator privilege is required to install them. On Linux dependencies will be automatically installed.
Container archives contain compiled executables and libraries, as well as the raytrace configurtion database and are provided in the form of archives which can be loaded by
Docker ,
Podman , or equivalent.
Using
Instructions for running raytraces of
Chandra are
here.
Installation
Debian based Linux (Debian, Ubuntu, Mint, etc)
Archives
Download
Find the your platform in the
Downloads Table and download the
following files from the link in the "Archive" column:
- archive-depends
- saotrace-2.1.0.tar.gz
Check Dependencies
Output may vary.
% apt list '?reverse-depends(?name(libcurl4)) ~i ?name(libcurl.*)'
libcurl3t64-gnutls/stable,now 8.14.1-2+deb13u2 amd64 [installed,automatic]
libcurl4t64/stable,now 8.14.1-2+deb13u2 amd64 [installed,automatic]
% apt list --installed `cat archive-depends`
libgfortran5/stable,now 14.2.0-19 amd64 [installed,automatic]
If any of the commands doesn't print a result, you will need to install the dependencies:
% sudo apt install `cat archive-depends`
Choose an installation directory
Choose where SAOTrace should be installed (call it
$DIR).
SAOTrace will be extracted into
$DIR/saotrace.
Create the directory if it does not exist
mkdir -p "$DIR"
The
saotrace directory may be moved elsewhere if later required.
Extract
tar -C "$DIR" xf saotrace-%SAOTRACE_VERSION%.tar.gz
Test
$DIR/saotrace/%SAOTRACE_VERSION%/tests/run-saotrace
Runtime Environment
Executables are found in
$DIR/saotrace/2.1.0/bin. You can add this to your path via
set PATH="$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
setenv PATH "$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
No other environment configuration is required. Please discontinue use of the
SAOTRACE_DB and
CONFIG_DB environment variables.
Packages
Download
Find the your platform in the
Downloads Table and download the
following files from the link in the "Package" column:
- saotrace-db_2.1.0_amd64.deb
- saotrace_2.1.0_amd64.deb
Install
sudo apt install ./*.deb
will install the software and configuration data into
- /opt/saotrace/2.1.0
- /opt/saotrace/config
respectively
Test
/opt/saotrace/%SAOTRACE_VERSION%/tests/run-saotrace
Runtime Environment
Executables are found in
/opt/saotrace/2.1.0/bin. You can add this to your path via
set PATH="/opt/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
setenv PATH "/opt/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
No other environment configuration is required. Please discontinue use of the
SAOTRACE_DB and
CONFIG_DB environment variables.
Red Hat based Linux distributions (RHEL, Fedora, AlmaLinux, RockyLinux)
Archives
Download
Find your platform in the
Downloads Table below, and download the following files from the link in the "Archive" column:
- archive-depends
- saotrace-2.1.0.tar.gz
Check Dependencies
Output may vary.
% dnf -C list `cat workdir/archive-depends`
Last metadata expiration check: 0:00:31 ago on Tue Dec 2 22:27:22 2025.
Installed Packages
libgfortran.x86_64 14.3.1-2.1.el10.alma.1 @baseos
libquadmath.x86_64 14.3.1-2.1.el10.alma.1 @baseos
If any packages appears under an "Available Packages" banner, you'll need to install them:
% sudo dnf install `cat archive-depends`
Choose an installation directory
Choose where SAOTrace should be installed (call it
$DIR).
SAOTrace will be extracted into
$DIR/saotrace.
Create the directory if it does not exist
mkdir -p "$DIR"
The
saotrace directory may be moved elsewhere if later required.
Extract
tar -C "$DIR" xf saotrace-%SAOTRACE_VERSION%.tar.gz
Test
$DIR/saotrace/%SAOTRACE_VERSION%/tests/run-saotrace
Runtime Environment
Executables are found in
$DIR/saotrace/2.1.0/bin. You can add this to your path via
set PATH="$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
setenv PATH "$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
No other environment configuration is required. Please discontinue use of the
SAOTRACE_DB and
CONFIG_DB environment variables.
Packages
Download
Find the your platform in the
Downloads Table and download the
following files from the link in the "Package" column:
- saotrace-2.1.0-1.x86_64.rpm
- saotrace_db-2.1.0-1.x86_64.rpm
Install
sudo yum install *.rpm
will install the software and configuration data into
- /opt/saotrace/2.1.0
- /opt/saotrace/config
respectively.
Test
/opt/saotrace/%SAOTRACE_VERSION%/tests/run-saotrace
Runtime Environment
Executables are found in
/opt/saotrace/2.1.0/bin. You can add this to your path via
set PATH="/opt/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
setenv PATH "/opt/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
No other environment configuration is required. Please discontinue use of the
SAOTRACE_DB and
CONFIG_DB environment variables.
MacOS
Archive
Download
Find the MacOS x86 entry for your OS version in the
Downloads Table below, and download the following files from the link in the "Archive" column:
Choose an installation directory
Choose where SAOTrace should be installed (call it
$DIR).
SAOTrace will be extracted into
$DIR/saotrace.
Create the directory if it does not exist
mkdir -p "$DIR"
The
saotrace directory may be moved elsewhere if later required.
Unquarantine the archive
xattr -c saotrace-%SAOTRACE_VERSION%.tar.gz
Extract
tar -C "$DIR" xf saotrace-%SAOTRACE_VERSION%.tar.gz
Test
$DIR/saotrace/%SAOTRACE_VERSION%/tests/run-saotrace
Runtime Environment
Executables are found in
$DIR/saotrace/2.1.0/bin. You can add this to your path via
set PATH="$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
setenv PATH "$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"
No other environment configuration is required. Please discontinue use of the
SAOTRACE_DB and
CONFIG_DB environment variables.
Container Image
Download
Download the
image archive 
and
script
Load the archive as an image
This will create a container image named saotrace:2.1.0.
Via
podman (preferred)
podman image load -i saotrace-container-image-%SAOTRACE_VERSION%.tar.gz
Via
docker
sudo docker image load -i saotrace-container-image-%SAOTRACE_VERSION%.tar.gz
Install the script
Copy the
run-saotrace script to wherever you'd like. For documentation, run
$DIR/run-saotrace --manual
where
$DIR is where it was installed.
Test
$DIR/run-saotrace /opt/saotrace/%SAOTRACE_VERSION%/tests/run-saotrace
where
$DIR is where
run-saotrace was installed.
Runtime Environment
To run an SAOTrace executable, use the
run-saotrace script:
run-saotrace plist trace-nest
run-saotrace trace-nest
No other environment configuration is required. Please discontinue use of the
SAOTRACE_DB and
CONFIG_DB environment variables.
Building from Source
Download the Source Code
The source code for
SAOTrace is available as a
compressed tar file 
.
Unpack the tarball
tar xzvf saotrace-%SAOTRACE_VERSION%.tar.gz
This will create a directory named
saotrace-2.1.0.
Follow the Installation Instructions
Please read and follow the instructions in the
INSTALL
file included in the top directory of the source distribution.
Downloads
| O/S |
Vendor/Distribution |
Version |
Arch |
Archive |
Package |
| |
|
|
|
|
|
| GNU/Linux |
AlmaLinux |
8 |
x86_64 |
|
|
| GNU/Linux |
AlmaLinux |
9 |
x86_64 |
|
|
| GNU/Linux |
AlmaLinux |
10 |
x86_64 |
|
|
| |
| GNU/Linux |
Debian |
11 |
x86_64 |
|
|
| GNU/Linux |
Debian |
12 |
x86_64 |
|
|
| GNU/Linux |
Debian |
13 |
x86_64 |
|
|
| |
| GNU/Linux |
Fedora |
37 |
x86_64 |
|
|
| GNU/Linux |
Fedora |
41 |
x86_64 |
|
|
| GNU/Linux |
Fedora |
42 |
x86_64 |
|
|
| |
| GNU/Linux |
Mint |
21.3 |
x86_64 |
|
|
| GNU/Linux |
Mint |
22 |
x86_64 |
|
|
| GNU/Linux |
Mint |
22.1 |
x86_64 |
|
|
| GNU/Linux |
Mint |
22.2 |
x86_64 |
|
|
| |
| GNU/Linux |
RHEL |
8.8 |
x86_64 |
|
|
| GNU/Linux |
RHEL |
9 |
x86_64 |
|
|
| GNU/Linux |
RHEL |
10 |
x86_64 |
|
|
| |
| GNU/Linux |
RockyLinux |
8 |
x86_64 |
|
|
| GNU/Linux |
RockyLinux |
9 |
x86_64 |
|
|
| GNU/Linux |
RockyLinux |
10 |
x86_64 |
|
|
| |
| GNU/Linux |
Ubuntu |
22.04 |
x86_64 |
|
|
| GNU/Linux |
Ubuntu |
24.04 |
x86_64 |
|
|
| GNU/Linux |
Ubuntu |
25.04 |
x86_64 |
|
|
| GNU/Linux |
Ubuntu |
25.10 |
x86_64 |
|
|
| |
| MacOS |
Apple |
15.7.2 |
x86_64 |
|
|
| MacOS |
Apple |
26.1 |
arm64 |
|
|
Support
Please contact opticsoft@cfa.harvard.edu for all support issues.This software is not CXC Data Systems software
and is not supported in any fashion by them.
Please do not contact the CXC Helpdesk if you have problems.