Page 1 of 1

[SOLVED] Emacs and CLISP/SLIME are missing ASDF

Posted: Sun Sep 04, 2011 10:02 am
by heikole
My first post here, glad to have found this LISP forum :)
I'm running Debian/Wheezy and would like to use SLIME in Emacs. Trying to start SLIME (M-x slime) is causing an error:

Code: Select all

(progn (load "/usr/share/common-lisp/source/slime/swank-loader.lisp" :verbose t) (funcall (read-from-string "swank-loader:init")) (funcall (read-from-string "swank:start-server") "/tmp/slime.21052" :coding-system "iso-latin-1-unix"))

  i i i i i i i       ooooo    o        ooooooo   ooooo   ooooo
  I I I I I I I      8     8   8           8     8     o  8    8
  I  \ `+' /  I      8         8           8     8        8    8
   \  `-+-'  /       8         8           8      ooooo   8oooo
    `-__|__-'        8         8           8           8  8
        |            8     o   8           8     o     8  8
  ------+------       ooooo    8oooooo  ooo8ooo   ooooo   8

Welcome to GNU CLISP 2.49 (2010-07-07) <http://clisp.cons.org/>

Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
Copyright (c) Bruno Haible, Sam Steingold 1999-2000
Copyright (c) Sam Steingold, Bruno Haible 2001-2010

Type :h and hit Enter for context help.

[1]> 
;; Loading file /usr/share/common-lisp/source/slime/swank-loader.lisp ...
*** - READ from
       #<INPUT BUFFERED FILE-STREAM CHARACTER
         #P"/usr/share/common-lisp/source/slime/swank-loader.lisp" @143>
      : there is no package with name "ASDF"
The following restarts are available:
ABORT          :R1      Abort main loop
Break 1 SWANK-LOADER[2]> 
This seems to be strange, because the package cl-asdf is installed on the system. In my .emacs I set up SLIME like this:

Code: Select all

(add-to-list 'load-path "/usr/share/emacs/site-lisp/slime")  ; your SLIME directory
(require 'slime)
(slime-setup)
I would appreciate any hints on what could be going wrong here.

Re: Emacs and CLISP/SLIME are missing ASDF

Posted: Sun Sep 04, 2011 6:40 pm
by adam33147
I remember I had a problem with this once. I tried editing the file, but then another error popped up, then another (either another package not found or another file didnt find the ASDF package, dont remeber.). I didnt chase it down too far though. You can try installing slime from the website, or from the repositories, or try another version of Emacs from your repositories if you have an option. I would be curious what the problem is if you actually fix it.

Re: Emacs and CLISP/SLIME are missing ASDF

Posted: Mon Sep 05, 2011 8:13 am
by rkh
I assuming that when you said "the package cl-asdf is installed on the system", you meant that you installed it via something like apt-get (since you mentioned Debian). Did you also install CLISP on the system the same way?

If you did, it would seem ironic to me (but not your fault of course), because it looks as if CLISP cannot see asdf to require it (or whatever the equivalent of require is in CLISP). To test that CLISP cannot reach asdf, try launching a CLISP REPL yourself (without slime) and enter the first form slime is trying, namely

Code: Select all

(load "/usr/share/common-lisp/source/slime/swank-loader.lisp" :verbose t)
If you get the same error about there being no asdf, then you know CLISP cannot reach asdf, and that slime is not to blame in this particular case.

Here's where my expertise ends. I don't know CLISP. So if a kind CLISPer soul doesn't answer here, I recommend you go to the CLISP docs and find out how CLISP should be wired up to reach any asdf packages. Good luck.

[SOLVED] Emacs and CLISP/SLIME are missing ASDF

Posted: Tue Sep 06, 2011 12:20 pm
by heikole
OK, thanks for your helpful support. I'm quite sure now that the problem resides within the swank-loader implementation that is part of the slime version in Debian's package repository. My first try was to fix the problem with an extended initialization in .emacs:

Code: Select all

(add-to-list 'load-path "/usr/share/emacs/site-lisp/slime")  ; your SLIME directory
(require 'slime-asdf)
(require 'slime)
(slime-setup)
This resulted in another strange error coming from the module slime-asdf itself, so I dismissed the idea to fix Debian's package setup.
Then I did an

Code: Select all

apt-get purge slime
and downloaded and configured the CVS tarball from the SLIME site instead. And yes, this is working without any hassle :)

I will be going back to the Land of Lisp now, a very pleasant journey ;)