[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 hereRead more.

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

  • bash/zsh, etc:
set PATH="$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"

  • tcsh/csch, etc:
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

  • bash/zsh, etc:
set PATH="/opt/saotrace/%SAOTRACE_VERSION%/bin:$PATH"

  • tcsh/csch, etc:
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

  • bash/zsh, etc:
set PATH="$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"

  • tcsh/csch, etc:
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

  • bash/zsh, etc:
set PATH="/opt/saotrace/%SAOTRACE_VERSION%/bin:$PATH"

  • tcsh/csch, etc:
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:

  • saotrace-2.1.0.tar.gz

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

  • bash/zsh, etc:
set PATH="$DIR/saotrace/%SAOTRACE_VERSION%/bin:$PATH"

  • tcsh/csch, etc:
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 download and script download

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 download.

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 download download
GNU/Linux AlmaLinux 9 x86_64 download download
GNU/Linux AlmaLinux 10 x86_64 download download
 
GNU/Linux Debian 11 x86_64 download download
GNU/Linux Debian 12 x86_64 download download
GNU/Linux Debian 13 x86_64 download download
 
GNU/Linux Fedora 37 x86_64 download download
GNU/Linux Fedora 41 x86_64 download download
GNU/Linux Fedora 42 x86_64 download download
 
GNU/Linux Mint 21.3 x86_64 download download
GNU/Linux Mint 22 x86_64 download download
GNU/Linux Mint 22.1 x86_64 download download
GNU/Linux Mint 22.2 x86_64 download download
 
GNU/Linux RHEL 8.8 x86_64 download download
GNU/Linux RHEL 9 x86_64 download download
GNU/Linux RHEL 10 x86_64 download download
 
GNU/Linux RockyLinux 8 x86_64 download download
GNU/Linux RockyLinux 9 x86_64 download download
GNU/Linux RockyLinux 10 x86_64 download download
 
GNU/Linux Ubuntu 22.04 x86_64 download download
GNU/Linux Ubuntu 24.04 x86_64 download download
GNU/Linux Ubuntu 25.04 x86_64 download download
GNU/Linux Ubuntu 25.10 x86_64 download download
 
MacOS Apple 15.7.2 x86_64 download  
MacOS Apple 26.1 arm64 download  

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.

 
This page is maintained by the CXC Optics Group
CXC logo

The Chandra X-Ray Center (CXC) is operated for NASA by the Smithsonian Astrophysical Observatory. 60 Garden Street, Cambridge, MA 02138 USA.   Email: cxcweb@head.cfa.harvard.edu Smithsonian Institution, Copyright © 1998-2013. All rights reserved.