Juho Snellman wrote:
> You're trying to load the sb-rotate-byte contrib (which is a
> dependency of sb-md5) multiple times into the same image. That should
> not be happening. The only ways I can imagine that happening would be
> due to using the :force t argument for asdf:load-op, or some really
> baroque scenarios involving transferring core files with sb-md5
> already preloaded from one server to another where the sbcl contrib
> files have different timestamps.
Thanks a lot for the reply, in my case I'm guessing it's the first case.
I don't use sb-rotate-byte in my code directly, but two of the libraries
that I'm using use it. One is ironclad, and the .asd file looks normal
enough - I can see this in defsystem:
#+sbcl :depends-on #+sbcl (sb-rotate-byte)
But the other library, cl-utilities uses this in it's .asd file:
;; Sometimes we can accelerate byte rotation on SBCL by using the
;; SB-ROTATE-BYTE extension. This loads it.
(eval-when (:compile-toplevel :load-toplevel :execute)
(pushnew :sbcl-uses-sb-rotate-byte *features*))
(error () (delete :sbcl-uses-sb-rotate-byte *features*))))
My lisp-fu is not advanced enough to see if the latter is a problem, but
could there be a problem with it? If yes, how can I fix it?