================ C M U C L =============================================
        
  CMUCL is a free, high performance implementation of the Common Lisp
  programming language which runs on most major Unix platforms. It
  mainly conforms to the ANSI Common Lisp standard. CMUCL provides a
  sophisticated native code compiler; a powerful foreign function
  interface; an implementation of CLOS; the Common Lisp Object System;
  which includes multimethods; a metaobject protocol; a source-level
  debugger and code profiler; and an Emacs-like editor implemented in
  Common Lisp. CMUCL is maintained by a team of volunteers collaborating
  over the Internet, and is mostly in the public domain.


=== Installation instructions ==========================================

  For each supported platform (see below for platform-specific
  information) there are two gzipped tar archives, one containing the
  base system, and the other (with extra in the name) containing
  optional additional files supporting CLX, Hemlock, the Motif
  interface, and so on. Alternatively, you can download the slightly
  smaller bzipped archives (with the .bz2 filename extension), which
  contain the same data but were compressed using the bzip2 program.

  Download the archives corresponding to your platform. You can check
  the integrity of the files you have downloaded by comparing the
  output of md5sum <filename> with that given in the file md5sums.txt.
  
  The release tarballs extract to the following directory structure:
  
     bin/lisp
     lib/cmucl/lib/lisp.core
     doc/cmucl/README (this file)
     man/man1/cmucl.1
     ...
  
  This allows you to install CMUCL directly under /usr/local, for
  example using
  
     cd /usr/local
     tar xzf /path/to/cmucl-18d-<platform>.tar.gz
     
  or alternatively, install under a directory in /opt, for example
  
     mkdir /opt/cmucl-18d
     cd /opt/cmucl-18d
     tar xzf /path/to/cmucl-18d-<platform>.tar.gz
  
  In the second case you will need to create a shell script to invoke
  CMUCL. Copy the file /opt/cmucl-18d/lib/cmucl/sample-wrapper to a
  directory in your PATH (naming it cmucl for example), and replace
  both occurrences of <<your-cmucl-path>> by /opt/cmucl-18d. Make sure
  that this shell script is executable (using "chmod +x scriptname").
  
  You can now invoke CMUCL: this should display a banner then show a
  prompt (the default prompt is an asterisk).
  
     % cmucl
     CMU Common Lisp 18d, running on myhost
     See <URL:http://www.cons.org/cmucl/support.html> for information.
     Loaded subsystems:
        Python 1.0, target SPARCstation/Solaris 2
        CLOS based on PCL version:  September 16 92 PCL (f)
     * (format t "~&Hello, world!~%")
     Hello, world!
     NIL
     * 
  
  To load precompiled subsystems (assuming that you installed the
  -extra- tarball), just use REQUIRE:

     * (require :gray-streams)
     * (require :clx)
     * (require :clm)
     * (require :hemlock)

  DEFSYSTEM is not included with CMUCL, but can be obtained from
  <URL:http://clocc.sf.net/>. It may be installed as a subsystem by
  compiling it (using the function COMPILE-FILE), and moving the
  resulting defsystem.FASL file to
     /usr/local/lib/cmucl/lib/subsystems/defsystem-library.FASL 
  (where FASL is the file extension of compiled lisp files on your
  system, for instance .sparcf or .x86f). You can then say

     * (require :defsystem)

  to load the DEFSYSTEM facility into your running lisp. 

     
  You may wish to edit your site initialization file (in
  /usr/local/lib/cmucl/site-init.lisp). 

=== Platform-specific notes ============================================

  +++ Solaris/SPARC
  The release binaries are known to work with SunOS 5.5, 5.7 and 5.8
  (also known respectively as Solaris 2.5, Solaris 7 and Solaris 8).
  If you have an UltraSPARC processor you can get the v9 binaries,
  which use instructions which are only present on SPARC-v9
  implementations; otherwise you should get the binaries without v9 in
  the name of the tarball. If you have an UltraSPARC the command uname
  -m will say sun4u, if you have an older machine such as a
  SparcStation it will probably say sun4m.

  
  +++ Linux/x86 
  The release binaries should work with any i486 or better processor.
  The binaries were built against version 2.1 of the GNU C library
  (glibc2.1), but should run on systems using version 2.2. They should
  run with any Linux kernel after 2.0 (but beware early kernels in the
  2.4 series, which had poor virtual memory characteristics). There
  are known problems running CMUCL on kernels using some of the
  "highmem" patches: in particular the CONFIG_2GB patch seems to
  conflict with the memory map used by the release binaries. The
  CONFIG_1GB and CONFIG_64GB options work fine.

  CMUCL is known not to run under libsafe, whose system call
  interposition mechanism interferes with the foreign function
  interface.


  +++ FreeBSD/x86
  The release binaries should work with any i486 or better processor.
  The binaries were built on FreeBSD 4.3, but should run on any of the
  4.x releases. Dynamic loading of shared libraries is known not to
  work on FreeBSD 4.4 (but works on release 4.3 and earlier).


  +++ OpenBSD/x86
  The release binaries should work with any i486 or better processor.
  The binaries were built on OpenBSD 2.9, but are also known to run on
  the 2.8 and 3.0 releases.


  
  
=== Further information ================================================

  The best source for information on CMUCL is the web site,
  <URL:http://www.cons.org/cmucl/>. You will find pointers to
  documentation and tips on using CMUCL, and information regarding
  mailing lists and bug reporting. 

  Enjoy using CMUCL!


2002-04-11
