+ ¹ A slightly modified version which works with SBCL 0.8.21 or newer
+ could be found at
+ http://jupiter.td.org.uit.no/lisp/sbcl-0.8.21-af.tar.gz
+
+
+2. Set up paths to match your system:
+
+ - Add a logical-pathname-translation to the clg root directory in
+ ~/.cmucl-init.lisp, ~/.sbclrc or some other startup file, like
+ this:
+
+ (setf
+ (logical-pathname-translations "clg")
+ '(("**;*.*.*" "/home/espen/src/clg/**/")))
+
+ - Set the correct pkg-config search path if your Gtk+ installation
+ is in an unusual place, by adding it to the PKG_CONFIG_PATH
+ environment variable before starting lisp.
+
+ - Make sure ASDF finds the system definition files:
+
+ (push
+ (translate-logical-pathname "clg:systems;")
+ asdf:*central-registry*)
+
+
+ When checking out of CVS also do the following:
+ $ cd <clg toplevel>
+ $ mkdir systems && cd systems
+ $ find .. -name '*.asd' -exec ln -s {} . \;
+
+
+3. Compile and load the system:
+
+ (asdf:oos 'asdf:load-op :gtk)
+
+ In CMUCL 19a this will fail with:
+
+ Error in function KERNEL::%REDEFINE-DEFSTRUCT:
+ Redefining class PCL::SLOT-INFO incompatibly with the current definition.
+
+ Just accept the redefinition (restart 1) to continue building or
+ loading. To avoid doing this every time clg is loaded, compile
+ and load glib/pcl.lisp in newly started CMUCL process and save a
+ new core image.
+
+ If you are running SBCL with Slime you need to put the following
+ in ~/.swank.lisp to prevent Slime from spawning multiple
+ threads, since GTK+ is not really thread safe:
+
+ #+sbcl(setq swank:*communication-style* :fd-handler)
+
+ CLISP needs to be started with the option '-ansi' for clg to
+ compile and load.