Copyright (C) 2000-2012 |
GNU Info (slib.info)InstallationInstallation ============ There are four parts to installation: * Unpack the SLIB distribution. * Configure the Scheme implementation(s) to locate the SLIB directory. * Arrange for Scheme implementation to load its SLIB initialization file. * Build the SLIB catalog for the Scheme implementation. Unpacking the SLIB Distribution ------------------------------- If the SLIB distribution is a Linux RPM, it will create the SLIB directory `/usr/share/slib'. If the SLIB distribution is a ZIP file, unzip the distribution to create the SLIB directory. Locate this `slib' directory either in your home directory (if only you will use this SLIB installation); or put it in a location where libraries reside on your system. On unix systems this might be `/usr/share/slib', `/usr/local/lib/slib', or `/usr/lib/slib'. If you know where SLIB should go on other platforms, please inform agj @ alum.mit.edu. Configure Scheme Implementation to Locate SLIB ---------------------------------------------- If the Scheme implementation supports `getenv', then the value of the shell environment variable SCHEME_LIBRARY_PATH will be used for `(library-vicinity)' if it is defined. Currently, Chez, Elk, MITScheme, scheme->c, VSCM, and SCM support `getenv'. Scheme48 supports `getenv' but does not use it for determining `library-vicinity'. (That is done from the Makefile.) The `(library-vicinity)' can also be specified from the SLIB initialization file or by implementation-specific means. Loading SLIB Initialization File -------------------------------- Check the manifest in `README' to find a configuration file for your Scheme implementation. Initialization files for most IEEE P1178 compliant Scheme Implementations are included with this distribution. You should check the definitions of `software-type', `scheme-implementation-version', `implementation-vicinity', and `library-vicinity' in the initialization file. There are comments in the file for how to configure it. Once this is done, modify the startup file for your Scheme implementation to `load' this initialization file. Build New SLIB Catalog for Implementation ----------------------------------------- When SLIB is first used from an implementation, a file named `slibcat' is written to the `implementation-vicinity' for that implementation. Because users may lack permission to write in `implementation-vicinity', it is good practice to build the new catalog when installing SLIB. To build (or rebuild) the catalog, start the Scheme implementation (with SLIB), then: (require 'new-catalog) Implementation-specific Instructions ------------------------------------ Multiple implementations of Scheme can all use the same SLIB directory. Simply configure each implementation's initialization file as outlined above. - Implementation: SCM The SCM implementation does not require any initialization file as SLIB support is already built into SCM. See the documentation with SCM for installation instructions. - Implementation: VSCM From: Matthias Blume <blume @ cs.Princeton.EDU> Date: Tue, 1 Mar 1994 11:42:31 -0500 Disclaimer: The code below is only a quick hack. If I find some time to spare I might get around to make some more things work. You have to provide `vscm.init' as an explicit command line argument. Since this is not very nice I would recommend the following installation procedure: 1. run scheme 2. `(load "vscm.init")' 3. `(slib:dump "dumpfile")' 4. mv dumpfile place-where-vscm-standard-bootfile-resides e.g. mv dumpfile /usr/local/vscm/lib/scheme-boot (In this case vscm should have been compiled with flag -DDEFAULT_BOOTFILE='"/usr/local/vscm/lib/scheme-boot"'. See Makefile (definition of DDP) for details.) - Implementation: Scheme48 To make a Scheme48 image for an installation under `<prefix>', 1. `cd' to the SLIB directory 2. type `make prefix=<prefix> slib48'. 3. To install the image, type `make prefix=<prefix> install48'. This will also create a shell script with the name `slib48' which will invoke the saved image. - Implementation: PLT Scheme - Implementation: DrScheme - Implementation: MzScheme The `init.ss' file in the _slibinit_ collection is an SLIB initialization file. To use SLIB in MzScheme, set the SCHEME_LIBRARY_PATH environment variable to the installed SLIB location; then invoke MzScheme thus: `mzscheme -L init.ss slibinit' - Implementation: MIT Scheme `scheme -load ${SCHEME_LIBRARY_PATH}mitscheme.init' - Implementation: Guile `guile -l ${SCHEME_LIBRARY_PATH}guile.init' automatically generated by info2www version 1.2.2.9 |