Installing Larceny


Short version:

Copy the startup scripts wherever you like, and edit them to
set LARCENY_ROOT to the absolute path of the Larceny tree.


Long version:

After you download a binary distribution of Larceny or build from
source, there will be several scripts for starting Larceny in the root
of the Larceny tree.  These can be run from that location, regardless of
where you keep the tree.  If you want to make Larceny available to other
users of your system, however, or if you want to install the executables
in a standard place, this document will tell you how.

Larceny is usually started by a script, which has two functions:

 - It sets an environment variable LARCENY_ROOT to the absolute path of
   the Larceny tree, which is assumed to be the same as the directory
   that the script is in.

 - It dispatches on the name of the script, to choose both a Larceny
   executable (such as twobit.bin) and a heap image (such as
   petit.heap).

Which scripts you have depends on what platform you are using:

 - Windows: Batch files "larceny.bat" and "twobit.bat"
 - Solaris, Linux, Mac OS X: Shell scripts "larceny", "twobit",
   "scheme-script", and "compile-stale"

If you would like to move a larceny or twobit script to another
directory but not rename it, it is sufficient to hard-code the
location of Larceny's root directory into the script.  For
example, to install Petit Larceny into /usr/local on Linux,
untar the Larceny tree as /usr/local/lib/larceny.  Then copy
the scripts "larceny", "twobit", "scheme-script", and
"compile-stale" to /usr/local/bin, editing the first two by
uncommenting the line that sets LARCENY_ROOT, and setting it
to /usr/local/lib/larceny.

If you would like to change something else, such as the name of
a script, editing the script should not be too difficult.

Note that all implementations of the R6RS on Unix machines are
likely to provide their own scheme-script.  If you want Larceny
to execute your Scheme scripts, then you should use the which
command to make sure Larceny's scheme-script comes first in your
execution path.
