Step-by-step directions for UNIX compilation. These directions were updated on Sep. 7, 1993 Please note that this has absolutely nothing to do with MAKE! This file assumes you have read the "installation overview" in PROG.DOC, and that you have read the Unix section in IRON.DOC. If you haven't, please do so before following these steps: 1) Make sure that the necessary subdirectories to the main GAMESS directory exist: mkdir /u/mike/gamess (or whatever) chdir /u/mike/gamess mkdir source mkdir object mkdir tests mkdir machines mkdir graphics mkdir tools Use your mailer to save all GAMESS files into the correct one of these subdirectories. Check the 'read.me.1st' mail to be sure that you have all the necessary files. The correct file names are in the subject of each mail file. Use your editor to take the mail header out of each file. Pulling GAMESS out of your mailer shouldn't take an hour. 2) When this step is finished, your main GAMESS directory will contain 6 *.DOC files. Print these out, and read them! There is an overview of the compilation process in PROG.DOC. You should also read the UNIX description in IRON.DOC, as there are sometimes special direct edits to the source code required for some peculiar UNIX systems. Print the *.DOC files using column 1 as carriage control. If possible, use a laser printer in a 10 pitch font. The program "prtcc.f" in the tools directory may help you do this. I don't usually send this by E-mail, but will upon request. 3) Copy the GAMESS scripts named *.csh from the machines subdirectory to the GAMESS main directory, chdir /u/mike/gamess cp machines/comp.csh comp cp machines/compall.csh compall cp machines/lked.csh lked cp machines/seqgms.csh seqgms cp machines/pargms.csh pargms cp machines/tstgms.csh tstgms cp machines/runall.csh runall Make them executable, chmod 755 comp compall lked seqgms pargms tstgms runall Edit them as indicated in each. The edits are very simple, and are almost exclusively near the top of each file. This chooses your TARGET machine, sets the main directory for GAMESS to the correct value (probably not /u/mike/gamess!), and so on. The TARGETs are alliant, convex, mips, sun - these are obvious aixrt, aix6000, aix370 - IBM AIX operating systems apollo10k - HP-Apollo DN10000 ardent - Stardent TITAN or 3000 celerity - Celerity Computing scalar system decalpha - DEC AXP under OSF/1 (Alpha processor) decmips - DECstation under Ultrix (MIPS Rx000 processor) fps500 - Celerity's vector system, then FPS, then Cray... fujitsu - Fuji's VP2x00 series hp9000 - HP's 7x0 series of workstations ipsc - Intel iPSC/860 or Touchstone Delta ksr - Kendall Square Research sgi - Silicon Graphics Inc., as opposed to Swine Genetics International of Cambridge, Iowa tmc - Thinking Machines Corp, namely the CM-5 unicos - Cray UNICOS While customizing, you will encounter the variable PARALLEL in some of these scripts. We recommend that you set this to 'false' at first. Once you are satisfied that GAMESS is correctly installed in sequential mode, you may wish to re-install GAMESS in parallel mode. This is described in greater detail in PROG.DOC. Inspect 'comp' to see if there are special comments for your particular computer's FORTRAN. Your version of FORTRAN may be older or newer than the one we last tested, and there may be some time saving suggestions about what changes should be made for other version levels. Note that these scripts use "rm", which will cause problems if you have the alias "rm -i" set to prompt about file removal. Plase "unalias rm" into your .cshrc if this is so. Another problem that people sometimes face is that the "comp" script conflicts with the "comp" program in the MH mail handler that is present on some systems. This can be fixed by making sure the current directory is searched before any system directories, i.e. in your .cshrc file, set path=(. /bin /usr/bin /etc and so on) so that the . (current directory) is before all of the system directories as shown by "echo $path". 4) Manually activate the source code activator, then compile and link it. This is done by cd /u/mike/gamess/tools cp actvte.code actvte.f vi actvte.f :1,$s/^*UNX/ / (4 blanks) :wq f77 -O -o actvte.x actvte.f rm actvte.f Your compiler name may be something other than f77, and your optimization level may differ from -O. One of the most common installation mistakes is to forget to use the caret in the vi substitute command! This ensures that only the *UNX strings appearing in column 1 get changed. Note: Almost every form of Unix uses *UNX in ACTVTE, including AIX on the RS/6000. However, if you are on AIX/RT, turn on *AIX instead. If you are on UNICOS, turn on -BOTH- *UNX and *UCS. 5) Compile all of the source code by the command chdir /u/mike/gamess compall >& compall.log & This takes a long time, so find something else to do. When the job finishes, inspect 'compall.log' carefully for any compile time errors. You should also find a lot of object code in your object subdirectory. 6) Link an executable form of GAMESS by the command chdir /u/mike/gamess lked gamess 01 >& lked.log & This should produce the executable image 'gamess.01.x'. Inspect 'lked.log' for any error messages. The number is a "version number", each successive link should choose 01, 02, 03, ... 7) Edit 'tstgms' to match your choice of version number, and test the program by running all of the short tests: chdir /u/mike/gamess runall >& runall.log & The correct answers for the jobs are in comments in the input decks, and are echoed on the outputs. For example, type grep -i 'final' exam02.log grep -i 'rms' exam04.log grep -i 'terminated' exam*.log and so on to see if the program is correct. The paragraph in IRON.DOC should have given you some idea of how carefully and/or recently we have tested each machine type. Be extra careful with this check on the more flaky sounding systems. If desired, you may want to run some of the BENCH jobs as additional, more stringent tests. 8) Edit the production mode script 'seqgms' to match your link's version number. Tell each user how to access this script, and let them have at it! You should need to have only the 1 copy of this script, so that if changes to it are needed, they are easy to do. 9) This completes the installation of GAMESS itself. You probably want to look into the graphics and tools subdirectories sometime soon to see what's in there. MBLDR and MOLPLT are very useful in building and checking molecular structures. The file gamess/tools/gmshelp gives the Unix user online access to the INPUT.DOC chapter's description of each input group. This file needs to be customized to point to the correct path. 10) If you have more than one Unix workstation, even if they are of different brands, you may wish to pursue the parallel version of GAMESS. The script named 'pargms' will help you run in parallel using Ethernetted machines. Directions about the parallel version can be found in the PROG.DOC manual chapter.