Yothere,
I upgraded ECL this morning to the latest repo version and I cannot use it anymore with my usual setup (-norc works). My local versions of Quicklisp and ASDF are also the lastest. I have this in my init file:
;; Do ASDF first (when a compiler provides it directly, I think it is better ;; to use its version than mine). (require :asdf #-(or sbcl cmu ccl ecl mkcl xcl allegro (and lispworks (not lispworks-personal-edition))) '(#p"/usr/local/share/common-lisp/source/asdf/build/asdf.lisp"))
#-quicklisp (let ((quicklisp-init "/usr/local/share/common-lisp/source/quicklisp/setup.lisp")) (when (probe-file quicklisp-init) (load quicklisp-init)))
With this configuration, running ECL on the command-line gives me this:
didier(pts/4)% ecl Err 1 11:27 06/24/13 ;;; Loading #P"/home/didier/.clrc" ;;; Loading #P"/usr/local/lib/ecl-12.7.1/asdf.fas" ;;; Loading #P"/usr/local/lib/ecl-12.7.1/cmp.fas" ;;; Loading "/usr/local/share/common-lisp/source/quicklisp/setup.lisp" ASDF could not load sockets because Error while trying to load definition for system sockets from pathname /usr/local/lib/ecl-12.7.1/sockets.asd: No applicable method for SOURCE-FILE-TYPE with arguments of types COMPILED-FILE PREBUILT-SYSTEM. ;;; Error: ;;; in file impl.lisp, position 7644 ;;; at (DEFINE-IMPLEMENTATION-PACKAGE ECL ...) ;;; * The form (REQUIRE 'SOCKETS) was not evaluated successfully. ;;; Error detected: ;;; Error while trying to load definition for system sockets from pathname /usr/local/lib/ecl-12.7.1/sockets.asd: No applicable method for ASDF:SOURCE-FILE-TYPE with arguments of types ;;; COMPILED-FILE ;;; PREBUILT-SYSTEMAn error occurred during initialization: Error while invoking #<compile-op (:VERBOSE NIL) 0b0e79a8> on #<cl-source-file "quicklisp" "impl">. zsh: exit 1 ecl
I see that ELC's version of ASDF is old, so I tried to load ASDF 3 by removing 'ecl from the #-() form above. Now I get this instead:
didier(pts/4)% ecl Err 1 11:27 06/24/13 ;;; Loading #P"/home/didier/.clrc" ;;; Loading "/usr/local/share/common-lisp/source/asdf/build/asdf.lisp" An error occurred during initialization: Cannot delete the directory #P"/home/didier/.cache/common-lisp/ecl-12.7.1-52ca46e0-linux-x86/usr/local/share/common-lisp/source/asdf/build/asdf.fas". C library explanation: No such file or directory.. zsh: exit 1 ecl
Any advice ?
Thanks.
On Mon, Jun 24, 2013 at 11:37 AM, Didier Verna didier@lrde.epita.fr wrote:
With this configuration, running ECL on the command-line gives me this:
didier(pts/4)% ecl Err 1 11:27 06/24/13 ;;; Loading #P"/home/didier/.clrc" ;;; Loading #P"/usr/local/lib/ecl-12.7.1/asdf.fas" ;;; Loading #P"/usr/local/lib/ecl-12.7.1/cmp.fas" ;;; Loading "/usr/local/share/common-lisp/source/quicklisp/setup.lisp" ASDF could not load sockets because Error while trying to load definition for system sockets from pathname /usr/local/lib/ecl-12.7.1/sockets.asd: No applicable method for SOURCE-FILE-TYPE with arguments of types COMPILED-FILE
Did you make a _clean_ build of ecl? I normally get this when rebuilding on a previous build directory. The modules file is bogus and the *.asd files are not properly generated because ASDF deletes its packages when reloading itself during the build process.
Juanjo