forked from McCLIM/McCLIM
-
Notifications
You must be signed in to change notification settings - Fork 0
/
INSTALL
122 lines (81 loc) · 4.37 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
Prerequisites:
==============
ASDF - The ASDF system definition facility. Many implementations come
with it and (require :asdf) is all that is needed. If yours doesn't,
see http://www.cliki.net/asdf.
Installing McCLIM using mcclim.asd
==================================
To tell ASDF about the wherabouts of McCLIM and to compile it for the
first time, perform these steps:
1. Symlink mcclim.asd to a directory in your
asdf:*central-registry* list. E.g., for SBCL, that would be:
$ ln -sf /path/to/mcclim.asd ~/.sbcl/systems/
2. If you are using a Lisp implementation that requires a separate
CLX to be installed, do this now and symlink the clx's .asd file
to your asdf:*central-registry*, as above. If your
implementation's CLX doesn't come with a clx.asd file, you will
have to load CLX via (require :clx) or a similar mechanism
yourself.
3. You need to install the spatial-trees library (available at
http://cliki.net/spatial-trees). The preferred method for that is
via asdf-install. see http://cliki.net/asdf-install for an
introduction to that method.
4. On your Lisp's REPL (with ASDF loaded), type
(asdf:oos 'asdf:load-op :mcclim)
; compilation messages should zip past
After step 4, McCLIM and the CLX backend should be loaded and
you are good to go.
When you restart your lisp image, you will need to perform step 4 to
load McCLIM again.
Installing mcclim.asd if you were using ASDF & system.lisp before
=================================================================
Make sure to remove all symlinks in your asdf:*central-registry* to
system.lisp and replace them with symlinks to mcclim.asd. Keeping the
old links around will break loading the McCLIM system in subtle ways.
After replacing the symlinks, follow the "Installing McCLIM..."
section above, beginning at step 1 - the symlink mcclim.asd itself is
required, too.
Writing a system that depends on McCLIM
=======================================
In an ASDF system that depends on a loaded CLIM, use the following
code to declare a dependency on McCLIM:
(defsystem :your-clim-using-system
:depends-on (:mcclim #| other dependencies |#)
:components (#| components |#)
)
The dependency on the McCLIM system will also load a suitable display
backend on implementations where it can determine one.
Running the demos
=================
McCLIM comes with some interesting demo programs and applications:
address-book - The classic CLIM demo: (asdf:oos 'asdf:load-op :clim-examples) (in-package :clim-demo) (run-frame-top-level (make-application-frame 'address-book)) The Examples directory includes other demo programs that might be of interest. Many of these are quite old and were written before large parts of the CLIM specification were implemented; for good
examples of CLIM style it is best to look elsewhere.
clim-listener - a Lisp 'listener' or top-level loop with many
goodies for examining directories, CLOS classes, etc. Printed
results are mouse-sensitive and in supported implementations (currently OpenMCL) can be used directly as arguments in Lisp expressions: (asdf:oos 'asdf:load-op :clim-listener) (clim-listener:run-listener) functional-geometry - Frank Buss' and Rainer Joswig's functional
geometry explorer, implemented on top of clim-listener: (load "Apps/Functional-Geometry/functional-geometry.asd") (asdf:oos 'asdf:load-op :functional-geometry) (functional-geometry::run-functional-geometry) Installation Notes for Implementations
======================================
Notes about bugs or gotchas in specific Common Lisp implementations
appear in the release notes found in the ReleaseNotes directory.
Franz Allegro Common Lisp
=========================
McCLIM has been tested with the ANSI Common Lisp image alisp. It
doesn't currently work in with "modern Lisp" but support is on the way.
OpenMCL
=======
McCLIM has been tested with openmcl-1.0. It is recommended that you
download CLX from ftp://clozure.com/pub/CLX.
CLISP
=====
1. Get clisp-20041218 or newer. Build it with option --with-module=clx/mit-clx.
2. Get a copy of the ASDF package. Compile it:
$ clisp -c $ASDF/asdf.lisp
3. Start
$ clisp -K full -i $ASDF/asdf.fas
and continue as above.
CMUCL
=====
McCLIM has been tested with version 19.c.
SBCL
====
McCLIM has been tested with version 0.9.8 and later.