axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] Re: problem compiling wh-sandbox revision 571 on Windo


From: Waldek Hebisch
Subject: [Axiom-developer] Re: problem compiling wh-sandbox revision 571 on Windows
Date: Tue, 19 Jun 2007 12:01:10 +0200 (CEST)

Bill Page wrote:
> Here is the result of the test. It seems, as you say, that for some
> reason 'make-databases' is not loading any of the *.NRLIB. But oddly,
> I can load them manually by the ')lib' command and if I do, then the
> error message shifts to the next *.NRLIB. For example:
> 
> 
> -------
> 
> address@hidden ~/wh-test/src/algebra
> $ export AXIOM=C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32
> 
> address@hidden ~/wh-test/src/algebra
> $ ls $AXIOM
> algebra  autoload  bin  doc  lib  share  src  timestamp
> 
> address@hidden ~/wh-test/src/algebra
> $ export DAASE=C:/msys/1.0/home/Administrator/wh-sandbox/src/share
> 
> address@hidden ~/wh-test/src/algebra
> $ ../../build/i686-pc-mingw32/bin/interpsys.exe
> GCL (GNU Common Lisp)  2.6.8 CLtL1    Apr 16 2007 00:20:36
> Source License: LGPL(gcl,gmp), GPL(unexec,bfd,xgcl)
> Binary License:  GPL due to GPL'ed components: (UNEXEC)
> Modifications of this banner must retain notice of a compatible license
> Dedicated to the memory of W. Schelter
> 
> Use (help) to get some basic information on how to use GCL.
> Temporary directory for compiler files set to
> C:/DOCUME~1/ADMINI~1.ASU/LOCALS~1/Temp/
>                         AXIOM Computer Algebra System
>                  Version: Axiom wh-sandbox branch 2007-05-31
>                            Timestamp: no timestamp
> -----------------------------------------------------------------------------
>    Issue )copyright to view copyright notices.
>    Issue )summary for a summary of useful system commands.
>    Issue )quit to leave AXIOM and return to shell.
> -----------------------------------------------------------------------------
> 
>    Using local database
> C:/msys/1.0/home/Administrator/wh-sandbox/src/share/algebra/compress.daase..
>   Using local database
> C:/msys/1.0/home/Administrator/wh-sandbox/src/share/algebra/interp.daase..
>    Using local database
> C:/msys/1.0/home/Administrator/wh-sandbox/src/share/algebra/operation.daase..
>    Using local database
> C:/msys/1.0/home/Administrator/wh-sandbox/src/share/algebra/category.daase..
>    Using local database
> C:/msys/1.0/home/Administrator/wh-sandbox/src/share/algebra/browse.daase..
> (1) -> )lisp (make-databases "" nil)
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/apply.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/c-doc.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/c-util.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/profile.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/category.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/compiler.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/define.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/functor.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/info.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/iterator.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/modemap.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/nruncomp.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/package.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/htcheck.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/bc-matrix.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/bc-misc.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/bc-solve.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/bc-util.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/ht-util.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/htsetvar.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/ht-root.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-con.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-data.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/showimp.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-op1.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-op2.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-search.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-util.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/topics.
> (1) ->
> 
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-prof.
>    Loading 
> C:/msys/1.0/home/Administrator/wh-test/target/i686-pc-mingw32/autoload/br-saturn.
> 
> "building browse.daase"
> "building operation.daase"
> "building category.daase"
>    >> System error:
>    The function |SetCategory| is undefined.
> 
> (1) -> )sh SetCategory
>  SetCategory  is a category constructor
>  Abbreviation for SetCategory is SETCAT
>  This constructor is exposed in this frame.
>  Issue )edit NIL to see algebra source code for SETCAT
> 
> ------------------------------- Operations --------------------------------
>  ?=? : (%,%) -> Boolean                coerce : % -> OutputForm
> 
> (1) -> )lib SETCAT
>    SetCategory is now explicitly exposed in frame initial
>    SetCategory will be automatically loaded when needed from
>       /msys/1.0/home/Administrator/wh-test/src/algebra/SETCAT.NRLIB/code
> 
> ...
> 
> (1) -> )lisp (make-databases "" nil)
>    Loading ...
> 
> "building browse.daase"
> "building operation.daase"
> "building category.daase"    Loading
>       /msys/1.0/home/Administrator/wh-test/src/algebra/SETCAT.NRLIB/code
>       for  SetCategory
> 
>    >> System error:
>    The function |BasicType| is undefined.
> 
> (1) -> )lib BASTYPE
>    BasicType is now explicitly exposed in frame initial
>    BasicType will be automatically loaded when needed from
>       /msys/1.0/home/Administrator/wh-test/src/algebra/BASTYPE.NRLIB/code
> (1) -> )lisp (make-databases "" nil)
> 
> "building browse.daase"
> "building operation.daase"
> "building category.daase"    Loading
>       /msys/1.0/home/Administrator/wh-test/src/algebra/BASTYPE.NRLIB/code
>       for  BasicType
> 
>    >> System error:
>    The function |CoercibleTo| is undefined.
> 
> etc.
> 
> ---------------
> 
> So, it seems like some crucial initialization if missing that prevents
> 'make-databases' from finding and loading all the *.NRLIB. I have
> looked at the Lisp code in 'daase.lisp.pamphlet' but how this is
> supposed to work remains completely obscure to me. What changes when I
> issue the ')lib' command that allows 'make-databases' to then find and
> load the modules?
> 

The fact that ')lib' helps is unintended side effect (bug).  'make-databases'
should clean all old information and use only new one, but currently it
does not clean autoload info.  Usually this is not a big problem, but
is showed up during database bootstrap.

Concerning code in 'daase.lisp.pamphlet':  the 'localdatabase' function
is supposed to read information from files.  More preciely,
'localdatabase' computes list of files and calls 'localnrlib' (or
other functions) to process each of the files.  'localdatabase'
is used in two ways:  
1) from ')lib' command, in this mode explicit list of constructors is
   given
2) form make-databases, in this mode the arguments contain list of
   directories containing *.NRLIB subdirectories

Since apparently ')lib' command works (however the paths printed lack
drive part, which may be a problem), I would suspect that the problem
is in building list of *.NRLIB subdirectories.  I changed this part
to make it work in sbcl and clisp...

As a sanity check I will first check what '(truename "./")' gives
(we want patchname to the current directory).  Than I would look
what '(directory "*.NRLIB/index.KAF")' in algebra directory gives
-- it should produce list of pathnames to index.KAF files.
The exact result vary from Lisp to Lisp, but the form above was
the only one which gave what we want in all Lisps...

You may also try '(directory "*.NRLIB\\index.KAF")', to check
for possible bug handling slashes.

-- 
                              Waldek Hebisch
address@hidden 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]