Linux Installation Notes
Here is where you can get these software packages:
CERNLIB 97a: asisftp.cern.ch:cernlib/pc_linux/97a/tar file cernlib.tar.gz CERNLIB 98 egcs: asisftp.cern.ch:cernlib/pc_linux/98/other.ports file rh50.egcs102.lib.tar.gz g77: sunsite.unc.edu:pub/Linux/devel/lang/fortranESPACE also requires a number of system libraries to be present to link correctly. A typical list (for RedHat 5.0 with g77 0.5.22) is given here:
libXt.so.6 => /usr/X11R6/lib/libXt.so.6
libX11.so.6 => /usr/X11R6/lib/libX11.so.6
libg77.so.0 => /usr/lib/libg77.so.0
libm.so.6 => /lib/libm.so.6
libc.so.6 => /lib/libc.so.6
libSM.so.6 => /usr/X11R6/lib/libSM.so.6
libICE.so.6 => /usr/X11R6/lib/libICE.so.6
If you have g77 0.5.21 or earlier, the g77-enabled library will be called libf2c, but if you have 0.5.22 (the current version), the library will be called libg77. By default, the Makefile will try to link with libf2c. You should edit this if you have libg77.
The Absoft compiler is usually installed as the default "f77" command. If that is true on your system then the Makefile will call this compiler correctly. On some systems, the Absoft compiler has a different name, however. (You may judge... ;) For example, on the ifarml1/2 machines at JLab, it is /usr/lib/Af77. In this case you will need to put a link called "f77" pointing to Af77 in a directory in you PATH. On ifarml1/2, I did 'ln -s /usr/bin/Af77 ~ole/bin/f77'. Alternatively, you can go and change a number of Makefiles ...
Important: The compiler provides the option to optimize the code for PentiumPro (including Pentium II) machines. The corresponding command line flag is -B100. Likewise, there is a Pentium optimization option, -B101. Since most of us will be working with Pentium Pro/II machines, -B100 is enabled by default in the distributed Makefile. If you have a Pentium or less, you will need to comment out the appropriate lines.
You might be able to compile the code with the Portland Group f77 compiler, but that has never been tested. You will most certainly have to change the top-level Makefile.
Before you compile, please make sure that the following environment variables are set: (assuming your CERNLIB is in /cern/pro/lib and your ESPACE is in /home/myname/espace):
CERN=/cern (or your CERNLIB directory) CERN_ROOT=/cern/pro CERN_LEVEL=pro OSNAME=Linux HALLA_DIR=/home/myname/espace (or your ESPACE directory)Also, please make sure that your 'perl' is located in /usr/local/bin. On RedHat systems, perl is usually in /usr/bin, so you need to make a link: ln -s /usr/bin/perl /usr/local/bin/perl. If you do not do this, sfmakedepend will fail with 'command not found'.
You might get warnings about misaligned variables u1,v1,w, never used variables, and "Can't find file ...". You can ignore these messages. They should no longer occur with ESPACE 2.7 or later.
The precompiled, official version of ESPACE is in /work/halla/software/bin/Linux/espace. It was compiled on ifarml2 and should run under RedHat 4.2 and 5.0.