HEASoft (pwkit.environments.heasoft
)¶
This module provides an encapsulated scheme for running HEASoft tools
within the pwkit.environments
framework.
This module sets things up such that parameter files for HEASoft tasks
(“pfiles”) land in the directory ~/.local/share/hea-pfiles/
.
Using HEASoft in the pwkit.environments
framework¶
The module pwkit.environments
implements a system for running
sub-programs that depend on large, external software environments such as
HEASoft. It provides a command-line tool, pkenvtool
, that you can use to
run HEASoft code in a controlled environment.
In order to use this module, you must tell the pwkit.environments
system where your HEASoft installation may be found. To do this, just export
an environment variable named $PWKIT_HEASOFT
that stores the path to the
platform-specific subdirectory of your HEASoft installation. In other words,
the file $PWKIT_HEASOFT/headas-init.sh
should exist. On a Linux system the
value of $PWKIT_HEASOFT
might end with something like
x86_64-unknown-linux-gnu-libc2.23
. Once you’ve correctly set this
environment variable, the environments system will take care of the rest.
HEAsoft installation notes¶
The following examples assume version 6.21 for concreteness. Substitute your actual version as needed, of course.
Installation of HEASoft from source is strongly recommended. Download the
source code from a URL like this one.
The HEASoft website lets you customize the tarball, but it’s probably easiest
just to do the full install every time. The tarball unpacks into a directory
named like heasoft-6.21/...
so you can safely curl|tar
in your
source-code directory.
To build, then run something like:
$ cd heasoft-6.21/BUILD_DIR
$ ./configure --prefix=/a/heasoft/6.21
$ make # note: not parallel-friendly
$ make install
You then need to fetch the CALDB
data files into the HEASoft installation directory:
$ cd /a/heasoft/6.21
$ wget http://heasarc.gsfc.nasa.gov/FTP/caldb/software/tools/caldb.config
$ wget http://heasarc.gsfc.nasa.gov/FTP/caldb/software/tools/alias_config.fits