[mcclim-devel] Errors installing McClim
Andy Hefner
ahefner at gmail.com
Sun Jul 11 22:23:36 UTC 2010
On Mon, Jul 12, 2010 at 1:38 AM, Oliver Uvman <oliver.uvman at gmail.com> wrote:
> Hello!
>
> I'm trying to follow the guide on
> http://mcclim.cliki.net/McCLIM%2BSBCL for installing McClim, but when
> I do (asdf-install:install :mcclim) I get an error, which I tried to
> accept and continue the install from, but the errors just keep coming
> after that so I thought I'd ask.
Short answer: Follow Stas's advice, and additionally check out the
latest version of McCLIM from CVS rather than using asdf-install.
Longer answer:
The advice on the wiki is a bit out of date. These days, nine out of
ten lispers agree that neither asdf-install, common-lisp-controller,
nor Debian/Ubuntu-packaged lisp implementations should be used by
anyone, at any time, for any purpose. McCLIM itself should certainly
be checked out from CVS (or a git mirror) rather than using
asdf-install, because the last released version of McCLIM is quite
old. CLC, foisted upon unwitting victims by the Debian lisp packages,
may not be intrinsically broken, but few people use it, fewer
understand it, and it has earned a reputation for breaking things and
causing headaches while offering no real benefit to most users.
> The error I'm getting is:
...
> for "file /usr/share/common-lisp/source/slime/swank-loader.lisp"
> ;
> {BF565E1}>:
> ; package "CLC" not found
...
> I tried (asdf-install:install :clc) but there doesn't seem to be a
> package with that name. I know it stands for common-lisp-controller,
> and I have it apt-getted on my system (Ubuntu Lucid x86). Anybody know
> what the problem is?
Some background: Swank is the backend half of SLIME, written in CL and
loaded into your lisp process, which emacs talks to over a socket. It
contains several functions which are useful to McCLIM for doing things
which can't be implemented portably, and as it's been ported to every
CL of interest and virtually everyone can be expected to already have
it on their machines, it makes a handy compatibility layer. CLC is a
strange thing which, as I understand it, is used by the Debian CL
packages for its ability to compile systems to FASLs and copy those to
/usr where any user will be able to load them, so that each user isn't
forced to compile everything themselves (and deal with the problem of
not having write permission to /usr where the source code is
installed). You can imagine how such an arrangement might not appeal
to someone who wants the option of easily hacking on any and all
components in their lisp environment, and as such most "upstream"
hackers, so to speak, reject the CLC-based environment and install
everything from source, rendering them unable to help when buggy
interactions involving CLC crop up. :)
The version of SLIME provided by your Linux distribution appears to
have been modified with the expectation that CLC will always be loaded
before attempting to load Swank. This must hold true for however
they've arranged SLIME to work, but not for the (admittedly uncommon)
case of CL software that wants to load Swank independently. Loading
CLC manually before attempting to load McCLIM may well fix the issue,
but I don't know how to do that.
More information about the mcclim-devel
mailing list