Compilers and libraries

There is a vareity of compilers installed on the Obelix. Each user will need to decide which compiler to use. It is very important that you also specify the correct libraries else you might not be able to compile your program or it might not run.

GCC

The very popular GCC (GNU compiler suite) is installed. The GCC is very usefull as it can be found on virtually every Linux/BSD computer. Furthermore, is exsist on all the most popular platforms Intel/(Windows+Linux+...), AMD and AMD64, SunOS (both Intel and Sun), IBM RS/6000 .....

The libraries compiled specifically for GCC are installed in /opt/gnu . Here you can find MPICH, LAM/MPI, HDF4.1r5. For details see the Libraries section further down.

Intel

The Intel C/C++ and fortran 95 compiler are installed in both version 7 and 8 under /opt/intel/compiler70 (and 80). The default is version 8, but as some bugs have been found in version 8 this might change. It is recommended that you use the Intel compilers if possible as they generate code that are somewhat faster tha GCC (up to around 30% for some applications).

Libraries compiled for the Intel compilers are stored under /opt/intel/compiler70 (80). You will find MPICH, LAM/MPI and HDF4.1r5.

IDL

IDL version 6.0 is installed at the cluster in the directory /opt/rsi/idl . For now there is only installed 5 licenses on Obelix so if you are sitting on a desktop where IDL is installed please consider using that. As network to most of the workstations are 1Gb it should work sufficiently fast. Remember not to start IDL on more than one display as this will check out more licenses. If you need to have IDL running in two xterms log in to Obelix, start a xterm in the background and then start IDL in this on plus the one you used to log in.

Java and other

Besides the GCC and Intel compilers a variety of other compilers/interpretters are installed. For Java this is Blackdown and IDM java develloper kits (the Sun jdk will be installed shortly), kaffe and jikes are installed. So far no additional libraries have been installed for Java.

A few of the other programming languages install are python and perl.

Libraries

Due to incompatibilities between the different compilers installed each of the following libraries have been compiled and installed with both GCC and Intel compiles: MPICH-1.2.5, LAM/MPI 7.0.5 and HDF4.1r5. It is important that you make sure you are using the correct version of the library when compiling. If you are using MPI it is VERY important that you compile your program with the mpif77, mpicc in your PATH if this is not the MPI version you want to use change your PATH in your configuration file (~/.cshrc or ~/.bashrc) else you will most likely not be able to run your program (examples below).


Examples

First an example for setting up the PATH using tcsh (edit your ~/.cshrc):
....
....
setenv PATH /opt/gnu/mpich-1.2.5/bin:$PATH
now the same for BASH (edit you ~/.bashrc file to include)
....
....
export PATH=/opt/gnu/mpich-1.2.5/bin:$PATH

Now how can you link with the correct HDF library (shell independent):

g77 -L/opt/gnu/mpich-1.2.5/lib -ldf -lmfhdf -ljpeg -lz something1.f something2.f something3.f