1. BINARY DISTRIBUTION
1.1. Quick start
- 1.2. Finding ancilliary files
+ 1.2. Finding ancillary files
1.3. Anatomy of SBCL
2. SOURCE DISTRIBUTION
1.1. Quick start:
+ To run SBCL without installing it, from the top of binary distribution
+ directory:
+
+ $ sh run-sbcl.sh
+
The following command installs SBCL and related documentation under
the "/usr/local" directory:
In other words, "install.sh" installs SBCL under the directory named
by the environment variable "INSTALL_ROOT".
- If you install SBCL from binary distribution in other location then
- "/usr/local", see section 1.2, "Finding ancilliary files".
+ If you install SBCL from binary distribution in other location than
+ "/usr/local", see section 1.2, "Finding ancillary files".
-1.2. Finding ancilliary files
+1.2. Finding ancillary files
The SBCL runtime needs to be able to find the ancillary files
associated with it: the "sbcl.core" file, and the contrib modules.
passed their tests. If you need to install by hand, see "install.sh"
for details.
- Documentation concists of a man-page, the SBCL Manual (in info, pdf
+ Documentation consists of a man-page, the SBCL Manual (in info, pdf
and html formats), and a few additional text files.
2. SOURCE DISTRIBUTION
If you don't already have an SBCL binary installed as "sbcl" on your
system, you'll need to tell make.sh what Lisp to use as the
- cross-compilation host. For example, to use CMU CL (assuming has
+ cross-compilation host. For example, to use CMUCL (assuming has
been installed under its default name "lisp") as the
cross-compilation host:
- $ sh make.sh 'lisp -batch'
+ $ sh make.sh 'lisp -batch -noinit'
The build may take a long time, especially on older hardware. A
successful build ends with a message beginning: "The build seems to
(pushnew x features))
(disable (x)
(setf features (remove x features))))
- ;; Threading support, available on x86 Linux only.
- (enable :sb-thread)
- ;; Slightly smaller core
- (disable :sb-doc)))
+ ;; Threading support, available only on x86/x86-64 Linux, x86 Solaris
+ ;; and x86 Mac OS X (experimental).
+ (enable :sb-thread)))
This is the preferred way because it lets local changes interact
cleanly with CVS changes to the main, global source tree.
Segfaults on Fedora
Try disabling exec-shield. The easiest way is to use
- setarch: "setarch i386 sbcl".
+ setarch: "setarch i386 -R sbcl".
Build crashes mysteriously, machine becomes unstable, etc
Other
- * Check that the host lisp you're building with is known to work
- as an SBCL build host, and the your OS is supported.
+ * Check that the host lisp you're building with is known to work as
+ an SBCL build host, and that your operating system is supported.
* Try to do a build without loading any initialization files
for the cross-compilation host (for example
2.5. Supported platforms
- Last updated for SBCL 0.8.10.61 (2004-05-28).
+ Last updated for SBCL 0.9.3.74 (2005-08-20).
All of the following platforms are supported in the sense of "should
work", but some things like loading foreign object files may lag
- behind on less-used OS's.
+ behind on less-used operating systems.
Supported toolchains:
SBCL
CMUCL
OpenMCL
- CLISP (recent versions only)
+ ABCL (recent versions only)
Note that every release isn't tested with every possible host
compiler. You're most likely to get a clean build with SBCL itself
Supported operating systems and architectures:
- x86 PPC Alpha Sparc HPPA MIPS MIPSel
- Linux 2.2, 2.4, 2.6 X X X X X X X
+ x86 PPC Alpha Sparc HPPA MIPS MIPSel x86-64
+ Linux 2.2, 2.4, 2.6 X X X X X X X X
FreeBSD X
OpenBSD 3.4, 3.5 X
NetBSD X
- Solaris X
+ Solaris X X
Tru64 X
- Darwin (Mac OS X) X
+ Darwin (Mac OS X) X X
+ Windows X
- Some OS's are more equal then others: most of the development and
- testing is done on x86 Linux and *BSD, PPC Linux and Mac OS X.
+ Some operating systems are more equal than others: most of the
+ development and testing is done on x86/x86-64 Linux and x86/PPC
+ Mac OS X.
If an underprivileged platform is important to you, you can help
- by eg. testing during the monthly freeze periods, and most
+ by e.g. testing during the monthly freeze periods, and most
importantly by reporting any problems.
If you need support beyond what is available on the mailing lists,