RVSAO Installation

To install this package in your IRAF-2.15.1 or later system, take the following steps:
For IRAF versions before 2.15.1 which use a different external package installation process, use this installation process instead.

1) Get the RVSAO Tar File(s)

If you are running IRAF already, you should have defined the iraf environment variable, which will point to the IRAF root directory, where the IRAF system has been downloaded. For example in csh
% set iraf=/data/IRAF2.17/
The RVSAO package is distributed as a gzipped tar archive. First set up a directory into which you will download the tar file(s). In the example below, we use ${iraf}Tar.
% cd ${iraf}
% mkdir Tar

Then download the the source code into that directory via HTTP from

If you don't want to recompile the package, precompiled binary files for IRAF 2.16.1 on CentOS 7 are available via HTTP from

2) Install the source files

Unpack the tar file into the IRAF package directory. On a Linux or Unix system, where, as an example, /data/IRAF/Tar is the pathname of the directory into which the package was downloaded and, as an example, /data/IRAF/extern/ is the directory where you are putting external packages:
% cd ${iraf}extern
% gzcat ../Tar/rvsao-2.8.5.tar.gz | tar xvf -
The archive file can be deleted once the package has been successfully installed. Note that the directory name will include the version, so that any previously installed versions of RVSAO will not be overwritten. If replacing a previous version:
% rm rvsao
We symbolically link the version directory to a generic directory:
% ln -s rvsao-2.8.5 rvsao

3) (Optionally) Install binaries

If the binary directory (rvsao-2.8.5-bin.linux64.tar.gz) was downloaded in step (1), install it now from /data/IRAF/extern/:
% cd ${iraf}extern
% gzcat ../Tar/rvsao-2.8.5-bin.linux64.tar.gz | tar xvf -

4) Set up access to the spectrum WCS package

For IRAF IRAF2.17, add these links in IRAF so that RVSAO can find and use the IRAF spectrum WCS library SMW, in the NOAO package:
      % cd ${iraf}unix/hlib/libc
      % ln -s ../../../noao/lib/smw.h smw.h
      % cd ${iraf}lib
      % ln -s ../noao/bin/libsmw.a libsmw.a
For IRAF versions earlier than 2.17, change the relink option in the RVSAO mkpkg command so that the spectrum WCS library is found in the noao package.
#   !mkpkg -p noao -p rvsao nrelink
    !mkpkg nrelink
    !mkpkg -p noao -p rvsao nrelink
#   !mkpkg nrelink

5) Set binary type

Symbolically link the appropriate binary directory to bin. rvsao$bin, which is originally linked to rvsao$bin.generic for distribution.
    cl> cd rvsao

On a PC running Linux,

    cl> mkpkg linux64
On a PC running Cygwin,
    cl> mkpkg cygwin
On a Macintosh running OS X,
    cl> mkpkg macosx

7) Compile and link RVSAO

[Skip if installing binaries from tar file]

Make the package by typing
    cl> cd rvsao
    cl> mkpkg update >& rvsao.spool
The spool file should be reviewed upon completion to make sure there were no errors.

8) Update RVSAO

If you have installed a new version of RVSAO after using a previous version, load the package and update the parameters of the task by typing:
    cl> rvsao
    cl> rvrelearn
Any new parameters will be installed with their default values while keeping your old values for the remaining ones. If the script crashes partway through, run it again until it completes.

Repeat this procedure by running IRAF in each IRAF home directory you may have. The RVSAO task relearn, which is used on each of the other RVSAO tasks, is useful for updating tasks in other packages which have added parameters in new releases.

Last updated 21 March 2022 by Jessica Mink