next up previous contents
Next: Supported Architectures Up: Installation Previous: Installation   Contents


Required Software

In general, Cactus requires the following set of software to function in single processor mode. Please refer to the architecture section, A1.2, for architecture specific items.

Perl5.0
Perl is used extensively during the Cactus thorn configuration phase. Perl is available for nearly all operating systems known to man, and can be obtained at http://www.perl.org.
GNU make
The make process works with the GNU make utility (referred to as gmake henceforth). While other make utilities may also work, this is not guaranteed. Gmake can be obtained from your favorite GNU site, or from http://www.gnu.org.
C
C compiler. For example, the GNU compiler. This is available for most supported platforms. Platform specific compilers should also work.
CPP
C Preprocessor. For example, the GNU cpp. These are normally provided on most platforms, and many C compilers have an option to just run as a preprocessor.
CVS
The Concurrent Versions System is not needed to run/compile Cactus, but you are strongly encouraged to install this software to take advantage of the update procedures. It can be downloaded from your favorite GNU site. Tar files of each release are also available.

To use Cactus, with the default driverpart11 (CactusPUGH/PUGH) on multiple processors you also need:

MPI
The Message Passing Interface, which provides inter-processor communication. Supercomputing sites often supply a native MPI implementation that is very likely to be compatible with Cactus . Otherwise, there are various freely available ones available, e.g. the MPICH version of MPI is available for various architectures and operating systems at http://www-unix.mcs.anl.gov/mpi/.

If you are using any thorns containing routines written in C++ you also need

C++
C++ compiler. For example, the GNU compiler. This is available for most supported platforms. Platform specific compilers should also work. Note that if a C++ compiler is available, then the main() routine in the flesh is compiled with C++ to allow static class initialisations.

If you are using any thorns containing routines written in Fortran you also need

F90/F77
For routines written in Fortran 77, either a Fortran 90 or a Fortran 77 compiler can be used. For routines written in Fortran 90, a Fortran 90 compiler is obviously required. There is a very limited set of free Fortran 90 compilers available for the different architectures.

While not required for compiling or running Cactus, for thorn development it is useful to install

ctags/etags
These programs enable you browse through the calling structure of a program by help of a function call database. Navigating the flesh and arrangements becomes very easy. Emacs and vi both support this method. See E7 for a short guide to tags.


next up previous contents
Next: Supported Architectures Up: Installation Previous: Installation   Contents