Steel Bank Common Lisp

Getting Started

SBCL is available in source and binary form for a number of different architectures. This page describes how to get SBCL installed and how to start
using it. For more complete installation instructions, please see the INSTALL document that comes with SBCL.

Installing a binary

SBCL is available in binary form for many architectures. To
obtain the latest binary release for your system, visit the platform support page and click on the green square which indicates your
platform. When the binary is downloaded, unpack the tarball:

bzip2 -cd sbcl-1.3.12-x86-linux-binary.tar.bz2 | tar xvf -

replacing sbcl-1.3.12-x86-linux-binary.tar.bz2 with the name of the tarball you downloaded. Then enter the
directory which was unpacked, and run the installation script to
install SBCL in your /usr/local directory:

cd sbcl-1.3.12-x86-linux
sh install.sh

Running SBCL

Make sure that /usr/local/bin is in your PATH. Then run SBCL by invoking "sbcl", which should
produce a banner like this:

This is SBCL 1.3.12, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
*

To quit SBCL, type (quit).

Installing to a different prefix

You can install SBCL to a different directory prefix by setting
the INSTALL_ROOT environment variable before running
the installation script:

INSTALL_ROOT=/my/sbcl/prefix sh install.sh

To start SBCL, you need to set the SBCL_HOME environment
variable to point at a subdirectory of the place you installed SBCL:

Make sure that /my/sbcl/prefix/bin is in your PATH and invoke SBCL as described above.

Using SBCL with Emacs

If you are going to use SBCL to develop Common Lisp, you
will want a development environment which is more human friendly than
the basic SBCL read-eval-print-loop. Such an environment is provided
by SLIME, the Superior Lisp Interaction Mode for Emacs. SLIME
provides many features, including an enhanced REPL with symbol
completion and command-line history and interactive support for
compiling and debugging code.

Compiling SBCL from Source

SBCL can be compiled from source code using another
ANSI-compliant Common Lisp implementation. As of SBCL 0.8.13, the
following compilers are known to work:

SBCL itself

CMU Common Lisp, tested with 18e and 19a

OpenMCL 0.14.1

CLISP 2.33.2

To compile SBCL, first unpack the source tarball and enter the
directory it makes. Then make sure that your system's make is a GNU make or set the GNUMAKE environment variable
appropriately:

Then you will need to invoke the build shell script with the
appropriate argument for the host Common Lisp you are using:

SBCL

sh make.sh

CMUCL

sh make.sh "lisp -batch"

OpenMCL

sh make.sh "openmcl --batch"

CLISP

sh make.sh "clisp"

Important: It is highly recommended that you run
the make.sh script in either a very fast terminal such as xterm (the
GNOME terminal and the OS X terminal are too slow) or that you run it
in a detached GNU screen session (use C-a d to detach the session and
screen -r to resume it). The SBCL compile produces lots of output and
your system's terminal program will likely slow down the compile in a drastic manner.

To install the SBCL binary you have built, see the
installation instructions above.