fix for clisp and ecl
2015-07-07 23:58:41 GMT
has a defmethod print-object
that appears to modify something in package 'common-lisp or 'clos, which are locked in clisp.
** - Continuable Error
DEFMETHOD((PRINT-OBJECT NIL STANDARD-OBJECT T)):
(#<PACKAGE CLOS> #<PACKAGE COMMON-LISP> #<PACKAGE COMMON-LISP>
If you continue (by typing 'continue'): Ignore the lock and proceed
I don't think you're supposed to be able to modify those packages, but I could be wrong.
at any rate,
1) clisp can't (start-weblocks) because of this
2) ecl exceeds its stack and other memory limits because of it. (even if you "continue", weblocks never starts).
deleting that method definition fixed both issues for me.
further, to get clisp to run weblocks, you also need to define #'md5:md5-string.
one way is by using ironclad:
$ LANG=en_US.UTF-8 clisp
(defun md5:md5sum-string (s)
(ironclad:digest-sequence :md5 (ironclad:ascii-string-to-byte-array s)))
lastly, for clisp:
you can't name your webapp the same as your asdf system, else weblocks tries to (probe-file "pub/") which is a dir, and clisp's probe-file doesn't accept dirs.
i.e. if your asdf system is "mywebapp", you can't (defwebapp mywebapp).
ideally weblocks would use a portability layer over the many compliant but incompatible probe-file implementations.
(such as http://www.gigamonkeys.com/book/practical-a-portable-pathname-library.html)
in the meantime, a workaround is to explicity set the public-files-path:
(defwebapp mywebapp :public-files-path #p"/path/to/pub/")
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.