Installation

RVASSOC is distributed as C++ source code so that individual users can compile their own platform-optimized versions.

While it should in principle be able to compile with any C++ compiler and run on any platform for which a GSL distribution exists, RVASSOC has only been compiled and extensively tested on x86-64 Linux platforms with GCC 4.1.2.

Download

RVASSOC source tarballs can be downloaded from SourceForge using the links on the navigation menu or the top of the site. The command line below can be used to download the source tarball for the latest version on Linux:

wget -O latest_rvassoc_src.tar.gz https://sourceforge.net/projects/rvassoc/files/latest/download

Prerequisites

RVASSOC requires the freely available GNU Scientific Library (GSL), version 1.14 or higher, and a BLAS library to compile. GSL provides its own BLAS library, libgslcblas, but more optimized BLAS libraries, such as the freely available ATLAS, could be linked instead.

Compilation

After unpacking the tar file into a directory, the following files should be visible:

LICENSE
macros.h
permwrap.cpp
permwrap.h
README.txt
rvassoc.cpp
teststats.cpp
teststats.h
vardata.h
examples/example1.dat
examples/example2.dat
examples/example3.dat
examples/example1.rvassoc.out
examples/example2.rvassoc.out
examples/example3.rvassoc.out

RVASSOC can be compiled using the GNU Compiler Collection (GCC) C++ compiler with the following minimal command:

g++ -I<GSL INCLUDE PATH> [GCC OPTIMIZATION FLAGS] \
    -o rvassoc rvassoc.cpp permwrap.cpp teststats.cpp \
    -L<GSL LIB PATH> [-L<BLAS LIB PATH>] -lgsl -l<BLAS LIB> -lm

The <ANGLE BRACKETED> items must be supplied by the user; the [SQUARE BRACKETED] items are optional. To use libgslcblas, the -L<BLAS LIB PATH> flag can be omitted and <BLAS LIB> is replaced by gslcblas. The user can choose [GCC OPTIMIZATION FLAGS] depending upon the version of GCC and the platform; see the GCC online documentation for details. At the very minimum, we recommend the -O2 optimization flag, although our original compilations used -O3 for greater optimization.