.TH LAM-HELPFILE 5 "July, 2007" "LAM 7.1.4" "LAM FILE FORMATS"
.SH NAME
lam-helpfile \- LAM help message file
.SH DESCRIPTION
.PP
The 
.I lam-helpfile
provides detailed error messages and suggestions for help on how to
fix common problems.  In many places in LAM, when an error occurs,
this help file is consulted to display a detailed message of what the
error was and, when possible, suggestions on how to fix the problem.
It consists of much of the information from the LAM FAQ (particularly
in dealing with getting LAM up and running)
.PP
At present, the following LAM tools use this help file (it is expected
that more will use it in future releases.  If you have suggestions for
locations where more detailed error messages would be helpful, please
let us know):
.PP
.nf
.ta 1.25i
hboot
lamboot
lamexec
lamhalt
lamnodes
lamwipe
mpicc (hcc)
mpiCC (hcp)
mpif77 (hf77)
mpirun
recon
tkill
tping
.fi
.SH STRUCTURE AND SYNTAX
.PP
The help file is multiple blocks of help text separated by single line
delimiters.  The delimiter lines are of the format:
.TP
-*-programname:topicname-*-
.PP
Where 
.I programname
is the general name of the program (or group of programs) that this
help message applies to, and
.I topicname
is the specific topic that this message applies two.
.PP
The special keyword
.I ALL
can be used for either the 
.I programname
or the
.I topicname 
in some cases; this is usually a "wildcard" value where  little
specific information is available.
.PP
Within the block of the message, lines that begin with a "#" are
treated as comments; they are not printed out.
.PP
Three special escape sequences can be used within the help message:
.TP 
%N
Where N is a number from 1 to the number of arguments that the help
message is invoked with.  The "%N" string is replaced with the value
of the Nth argument from the argument list.  The arguments are passed
from the LAM binaries themselves; they cannot be edited.  The comments
in the default LAM help file explain how many arguments each message
is invoked with, and what each argument is.
.TP 
%perror
Shows the result of the Unix perror(3) function.
.TP 
%terror
Shows the result of the LAM terror() function, which is essentially a
wrapper around the Unix perror(3) function.
.SH LOCATION OF HELP FILE
.PP
The exact location of the help file is configurable.  This allows
system administrators and/or users to customize the help file for
their particular environment.  
.PP
When LAM attempts to print an error message from the help file, it
looks for the help file in the following locations (in order):
.PP
.nf
.ta 1.25i
$HOME/lam-helpfile
$HOME/lam-7.1.4-helpfile
$HOME/etc/lam-helpfile
$HOME/etc/lam-7.1.4-helpfile
$LAMHELPDIR/lam-helpfile
$LAMHELPDIR/lam-7.1.4-helpfile
$LAMHOME/etc/lam-helpfile
$LAMHOME/etc/lam-7.1.4-helpfile
$TROLLIUSHOME/etc/lam-helpfile
$TROLLIUSHOME/etc/lam-7.1.4-helpfile
$SYSCONFDIR/lam-helpfile
$SYSCONFDIR/lam-7.1.4-helpfile
.fi
.PP 
Note the variable $LAMHELPDIR; this variable can be set according to
platform, for example, to provide operating system-specific
information, or information specific to particular groups of machines,
etc.  It can also be set to provide help messages in different
languages.
.PP
.I $SYSCONFIDIR
is typically
.IR $prefix/etc ,
where
.I $prefix
is the location to where LAM was installed; it was the option supplied
to ./configure when LAM was built (or /usr/local/lam-7.1.4,
by default).  However, note that the value of
.I $SYSCONFDIR
can be overridden when LAM is configured with the 
.I --sysconfdir
switch.
.SH EXAMPLES
.PP
The following is an example customization of the help for the hboot
and lamboot programs, when the user supplies a host file name that is
not found.  
.PP
.nf
-*-boot:open-hostfile-*-
%1 could not open the hostfile "%2" for the following reason:

	%perror
Things to check:

	- ensure that the file exists
	  try "ls -l %2"
	- ensure that you have read permissions on the file
	  try "cat %2"

You may not need to specify a host file at all; the system
administrators have defined the all of Beowulf cluster host names in
the LAM default host name list.  If you wish to use all of the Beowulf
nodes, simply execute:

	%1 -v

If you have any problems with LAM, please send mail to:

	lam-admin@your.domain.com
.fi
.LP
.SH FILES
.TP 4
$LAMHOME/etc/lam-7.1.4-helpfile
default LAM help file
.SH SEE ALSO
hboot(1),
lamboot(1),
lamexec(1),
lamhalt(1),
lamnodes(1),
lamwipe(1),
mpicc(1),
mpiCC(1),
mpif77(1),
mpirun(1),
recon(1),
tkill(1),
tping(1),
perror(3)