The latest clisp version (2.42, from 2007-10-16) should be good enough for StumpWM. Version 2.41 was too buggy.
You should link CLISP with the module new-clx. The documentation mentions also mit-clx, but new-clx is better: is faster (written in C), requires no fiddling with your X setup (re -nolisten-tcp), and it supports StumpWM's timers. So use new-clx. (In case you prefer mit-clx, you don't need CLISP >=2.42; just rebuild your LISP with mit-clx instead of new-clx).
The installation steps to follow are:
Check that you have the prerequisites for CLISP: libsigsegv, libiconv, libreadline, gettext. Also: pcre, pcre-devel.
Download the sources from sourceforge[1] and follow the "unix/INSTALL" file:
./configure ---prefix=/where/you/do/want/it/installed --with-module=clx/new-clx \
--with-module=rawsock --with-module=pcre --build buildIf you want to change config.lisp, pass --edit-config to the above configure command. Now copy everything to the prefix you said:
cd build; make install
Then you can try to execute the program "clisp" and it should work.
If you try to compile stumpwm now, it will fail because it can't find a package named cl-ppcre. (This is as of October 2007 with the CVS version of stumpwm and a CLISP from CVS). Therefore you should install cl-ppcre.
Preferably, install cl-ppcre from your distribution's package manager; that's easier. If you can't, follow these steps:
Note that stumpwm now builds properly with clisp. In the configure script you must tell clisp where to find cl-ppcre.
To do:
The default CLISP install does not come with the wonderful ASDF and ASDF-INSTALL but it's real easy to set up. Let's start with ASDF.
Step 1: Grab asdf.lisp from http://cclan.cvs.sourceforge.net/cclan/asdf/. I'll pretend we stored it in ~/cl/asdf.
Step 2: ASDF uses the variable *CENTRAL-REGISTRY* to keep track on just where your asds are stored, this needs to be set. Also ASDF needs to be loaded - preferably each time CLISP is started. So in ~/.clisprc.lisp we add
(load #p"/home/foo/cl/asdf/asdf")
(push #p"/home/foo/cl/systems" asdf:*central-registry*) ; Feel free to add more paths.
All done! On to ASDF-INSTALL.
Step 1: Grab ASDF-INSTALL with
foo@host:~$ wget http://common-lisp.net/project/asdf-install/asdf-install_latest.tar.gz
Step 2: Unpack asdf-install to somewhere out of the way.
Step 3: Make a symlink.
foo@host:~$ ln -s /where/you/unpacked/asdf-install/asdf-install.asd /home/foo/cl/systems/ (or whereever you put the *central-registry*)
Step 4: Fire up clisp and evalute the following:
(asdf:operate 'asdf:compile-op 'asdf-install)
(asdf:operate 'asdf:load-op 'asdf-install)Then, if there are no errors...
(quit)
Step 5: Add the following to your .clisprc.lisp:
#-:asdf-install (asdf:operate 'asdf:load-op :asdf-install)
Optional step 6: Install cl-ppcre:
foo@host:~$ clisp
...output...
[1]> (asdf-install:install :cl-ppcre)...and then add "(asdf:operate 'asdf:load-op :cl-ppcre)" (without the quotes) to .clisprc.
That should do it!