axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] Re: Cannot Rename The File Erlib To NRLIB


From: Camm Maguire
Subject: [Axiom-developer] Re: Cannot Rename The File Erlib To NRLIB
Date: 23 Aug 2006 14:26:39 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!

"Page, Bill" <address@hidden> writes:

> On Friday, August 18, 2006 3:08 PM Camm Maguire wrote:
> > 
> > This one I believe is machine specific -- can I log in and
> > reproduce? (is this axiom-developer.org?)
> 
> Yes. Please do.
> 
> > 
> > In general, the easiest way for me to fix these things is to
> > work with a build atop GCL configured with --enable-debug.
> > If anyone has the time to produce such a build somewhere and
> > confirm that the error persists, then point me to it, we can
> > take care of this in short order.  I realize that everyone
> > else's time is also limited, so if this is not possible please
> > so state.
> >
> 
> No problem. Or more to the point: I understand the problem. ;)
> 
> I have built a version of Axiom using the most recent gcl-2.6.8pre
> from your CVS and Axiom source from the build-improvements branch
> of Axiom Silver with the following gcl configure options:
> 
> GCLOPTS="--enable-debug --disable-xgcl --enable-vssize=65536*2
>  --enable-statsysbfd --enable-maxpage=196*1024"
> 
> Note: This is the same version (except for --enable-debug) that
> I used to test your recent patches for the new gcl-2.6.8pre.
> 
> You should be able access it on axiom-developer.org by setting:
> 
>   $ export AXIOM=/home/page/axiom.build-improvements/mnt/linux
>   $ export PATH=$AXIOM/bin:$PATH
> 
> > > 
> > > The problem is not the 'xxx.erlib' directory as such but rather the
> > > failure to overwrite the existing 'xxx.NRLIB' directory. Something
> > > has changed in recent versions of Axiom, gcl or linux which prevents
> > > the lisp function delete-file from deleting the directory.
> > > 
> > > See details:
> > > 
> > > http://wiki.axiom-developer.org/SandBoxArrays
> > > 
> > > This is a known and annoying bug described here:
> > > 
> > > http://wiki.axiom-developer.org/302CannotRenameTheFileErlibToNRLIB
> > > 
> > > Tim believes the problem is in GCL but Camm says that aspect of GCL
> > > has not changed. We need to find a solution.
> > > 
> > > As a work-round to the problem perhaps we should modify Axiom to
> > > call
> > > 
> > >   (system "rm -r xxx.NRLIB")
> > > 
> > > before the rename?
> > > 
> 
> Here is an annotated console transcript that confirms the problem
> and also shows another problem :-(
> 
>    >> System error:
>    #p"/var/lib/plone2/main/" is not of type SEQUENCE.
> 
> --------------
> 
> In the transcript below we are logged in as the user 'plone' who
> is the owner of the directory and it's contents.
> 
>   $ AXIOMsys
> 
>                         AXIOM Computer Algebra System
>           Version: Axiom (build improvements branch) -- 2006-08-08
>                Timestamp: Monday August 21, 2006 at 17:40:41
> ------------------------------------------------------------------------
> -----
>    Issue )copyright to view copyright notices.
>    Issue )summary for a summary of useful system commands.
>    Issue )quit to leave AXIOM and return to shell.
> ------------------------------------------------------------------------
> -----
> 
>    Re-reading compress.daase   Re-reading interp.daase
>    Re-reading operation.daase
>    Re-reading category.daase
>    Re-reading browse.daase
> 
> (1) -> )cd
>    The current AXIOM default directory is /var/lib/plone2/main/
> (1) -> )cd /var/zope/var/LatexWiki
> 
>    >> System error:
>    #p"/var/lib/plone2/main/" is not of type SEQUENCE.
> 
> (1) -> )cd
>    The current AXIOM default directory is /var/lib/plone2/main/
> (1) -> )quit
>    Please enter y or yes if you really want to leave the interactive
>       environment and return to the operating system:
> yes
> 
> --------------
> 
> Darn! Another bug??
> 

You need this in patches.lisp.pamphlet:

         (setq $current-directory (truename (user-homedir-pathname))) )
 goes to

         (setq $current-directory (namestring (truename 
(user-homedir-pathname)))))


> Ok, forget that for now. '/var/zope/var/LatexWiki' is where the
> directory XPRIMARR.NRLIB lives. When compiling SPAD source code
> Axiom wants to replace the existing XPRIMARR.NRLIB with another
> directory called XPRIMARR.erlib. The problem seems to be that
> the gcl function that Axiom uses to do this will not even allow
> the directory XPRIMARR.NRLIB to be over written or deleted
> even though similar gcl functions can delete the individual
> files in that directory.  Try it this way:
> 
> ----------------
> 
>   $ cd /var/zope/var/LatexWiki
> 
>   $ AXIOMsys
> 
>                         AXIOM Computer Algebra System
>           Version: Axiom (build improvements branch) -- 2006-08-08
>                Timestamp: Monday August 21, 2006 at 17:40:41
> ------------------------------------------------------------------------
> -----
>    Issue )copyright to view copyright notices.
>    Issue )summary for a summary of useful system commands.
>    Issue )quit to leave AXIOM and return to shell.
> ------------------------------------------------------------------------
> -----
> 
>    Re-reading compress.daase   Re-reading interp.daase
>    Re-reading operation.daase
>    Re-reading category.daase
>    Re-reading browse.daase
> 
> (1) -> -- Check the directory and files are there
> (1) -> )sys ls XPRIMARR.NRLIB
> code.lsp  code.o  index.KAF  info  XPRIMARR.fn  XPRIMARR.lsp
> 
> (1) -> -- We can delete the individual files inside the directory
> (1) -> )lisp (mapcar 'delete-file (directory (truename
> #p"XPRIMARR.NRLIB/*"))))
> 
> Value = (T T T T T T)
> 
> (1) -> )sys ls XPRIMARR.NRLIB
> 
> (1) -> -- Now try to delete the directory itself
> (1) -> )lisp (delete-file (truename #p"XPRIMARR.NRLIB"))
> 
>    >> System error:
>    Cannot delete the file #p"/var/zope/var/LatexWiki/XPRIMARR.NRLIB".
> 
> (1) -> -- But the file priveleges says that we should be able to do
> this!
> (1) -> )sys ls -l -d XPRIMARR.NRLIB
> drwxrwxrwx    2 plone    plone        4096 Aug 21 20:20 XPRIMARR.NRLIB
> 
> (1) ->

OK, I've made delete-file remove directories, and provide an errno
explanation on failure.  In Version_2_6_8pre.

Lisp has a bit of a different idea on some of these things.
probe-file, delete-file, open-file, etc. are not supposed to work on
directories, it appears, in keeping with some olden days in which
directories were not accessible as files on the fs.  I'm too busy now
to try to provide another function, so I hope this will do.

I though you had problems renaming, not deleting?  I have not done
anything here (yet).

Also, we build xgcl now the old fashioned way, so you might not need
--disable-xgcl anymore.

Take care, and thanks so much!

> 
> ----------------
> 
> Please let me know what else I can do to help you debug this.
> 
> Thanks.
> 
> Regards,
> Bill Page.
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

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