[Openmcl-devel] CCL 1.8, Swank, fails to load quicklisp on OS X

Karsten Poeck karsten.poeck at gmail.com
Sun Jun 10 20:00:17 UTC 2012


In article <41CBC8AF-50C4-43D9-BB66-45A1A57E9A58 at gmail.com>,
 Todd King <kizzle42 at gmail.com> wrote:

>     > Error: Unbound variable: CCL::FASL-VERSION
>     > While executing: ASDF::LISP-VERSION-STRING, in process listener(1).
>     > Type :GO to continue, :POP to abort, :R for a list of available 
>     > restarts.
>     > If continued: Skip loading init file.
>     > Type :? for other options.


You might have an outdated version of asdf.lisp.
In my copy (ccl-18, after svn update:
? (ASDF::LISP-VERSION-STRING)
"1.8-f95"

with asdf.lisp
....
#+clozure
(defun* ccl-fasl-version ()
  ;; the fasl version is target-dependent from CCL 1.8 on.
  (or (and (fboundp 'ccl::target-fasl-version)
           (funcall 'ccl::target-fasl-version))
      (and (boundp 'ccl::fasl-version)
           (symbol-value 'ccl::fasl-version))
      (error "Can't determine fasl version.")))

(defun lisp-version-string ()
  (let ((s (lisp-implementation-version)))
    (car ; as opposed to OR, this idiom prevents some unreachable code warning
     (list
      #+allegro
      (format nil "~A~A~@[~A~]"
              excl::*common-lisp-version-number*
              ;; ANSI vs MoDeRn - thanks to Robert Goldman and Charley Cox
              (if (eq excl:*current-case-mode* :case-sensitive-lower) "M" "A")
              ;; Note if not using International ACL
              ;; see http://www.franz.com/support/documentation/8.1/doc/operators/excl/ics-target-case.htm
              (excl:ics-target-case (:-ics "8")))
      #+armedbear (format nil "~a-fasl~a" s system::*fasl-version*)
      #+clisp
      (subseq s 0 (position #\space s)) ; strip build information (date, etc.)
      #+clozure
      (format nil "~d.~d-f~d" ; shorten for windows
              ccl::*openmcl-major-version*
              ccl::*openmcl-minor-version*
              (logand (ccl-fasl-version) #xFF))
      #+cmu (substitute #\- #\/ s)
      #+scl (format nil "~A~A" s
                    ;; ANSI upper case vs lower case.
                    (ecase ext:*case-mode* (:upper "") (:lower "l")))
      #+ecl (format nil "~A~@[-~A~]" s
                    (let ((vcs-id (ext:lisp-implementation-vcs-id)))
                      (subseq vcs-id 0 (min (length vcs-id) 8))))
      #+gcl (subseq s (1+ (position #\space s)))
      #+genera
      (multiple-value-bind (major minor) (sct:get-system-version "System")
        (format nil "~D.~D" major minor))
      #+mcl (subseq s 8) ; strip the leading "Version "
      s))))




More information about the Openmcl-devel mailing list