[Openmcl-devel] Weird ASDF problem

Robert Goldman rpgoldman at sift.info
Sat Sep 11 03:05:57 UTC 2010


On 9/10/10 Sep 10 -8:43 PM, Ron Garret wrote:
> It seems all the problems I'm having lately are weird.
> 
> This is on a clean build of 1.6-dev-r14248M-trunk.  I'm getting three different behaviors depending on whether I'm running in the IDE, at the command line on OSX, or at the command line on Linux.
> 
> In the IDE everything works as it should.
> 
> At the command line on Linux I can load most ASDF systems, but not CXML:
> 
> ? (require :cxml)
> ASDF could not load cxml because Error while trying to load definition for system cxml from pathname /home/ron/lisplib/asdf/cxml.asd: :VERSION is an invalid initarg to INITIALIZE-INSTANCE for #<STANDARD-CLASS MISSING-DEPENDENCY>.
> Valid initargs: (:REQUIRES :PARENT :REQUIRED-BY)..
>> Error: Error while trying to load definition for system cxml from pathname /home/ron/lisplib/asdf/cxml.asd: :VERSION is an invalid initarg to INITIALIZE-INSTANCE for #<STANDARD-CLASS MISSING-DEPENDENCY>.
>>        Valid initargs: (:REQUIRES :PARENT :REQUIRED-BY).
>> While executing: (:INTERNAL FIND-SYSTEM), in process listener(1).

This looks like a second-order error -- it looks like you are getting an
error in the signaling of the error.  Looks like someone's trying to
signal a missing-dependency error with a :version initarg.  But I'm
looking at the latest asdf.lisp from the asdf git repo, and there's a
special condition class, missing-component-of-version, that takes the
:version initarg, and I can't find a place in the asdf code where a
:version argument would be supplied to a missing-dependency condition
object.

A backtrace might help here, together with any information you could
give us on the asdf version you have (what's the value of
asdf:*asdf-version*?). Send it to the asdf-devel mailing list, or better
yet, post it on the asdf launchpad bug tracker.

> 
> But loading, e.g. CFFI works.
> 
> At the command line on OSX all attempts to load anything through ASDF, but with a different error:
> 
> ? (require :trivial-features)
> ;Loading #P"/Users/ron/devel/lisp-code/asdf/trivial-features.asd"...
> #<SYSTEM "trivial-features">
> #<STANDARD-METHOD PERFORM (TEST-OP (EQL #<SYSTEM "trivial-features">))>
> ASDF could not load trivial-features because File #P"ccl:" does not exist..
>> Error: File #P"ccl:" does not exist.
>> While executing: ASDF::WRAPPING-OUTPUT-TRANSLATIONS, in process listener(1).
> 
> and yet:
> 
> ? (probe-file "ccl:examples;")
> #P"/Users/ron/devel/ccl/trunk/examples/"

The only thing I can think of here is that ASDF 2 is not working
properly with logical pathnames. /Is/ CCL a logical pathname host?  How
do REQUIRE and ASDF interact on CCL?  Is this one of the platforms where
REQUIRE invokes ASDF:load-system ?  I'm afraid I'm only a very
occasional CCL user myself.  Again, the ASDF-devel list might help.
Looks like something's wrong in the configuration of ASDF's input
translations --- this is something new in ASDF2, and if you used to use
some code of your own that specially configured the
asdf:*central-registry*, that might be the problem.

best,
r



More information about the Openmcl-devel mailing list