From: Oyvin Halfdan Thuv
Subject: clg (GTK for Common Lisp) and CMUCL 19a
Date: 
Message-ID: <7ok6tlwq25.fsf@apollo.orakel.ntnu.no>
Hi,
I'm having troubles getting clg-0.51 running on CMUCL 19a. One problem
is package locking (wich can be turned off by evaluating unlock-all-packages),
but another problem is pathnames in the new version of CMUCL (19a) versus
the earlier ones. I have found links about other problems with this (mathlisp)
but the reason (or soulution) have not been properly described.

I would be happy if anyone with the proper knowledge of the load funciton
and "portable" pathnames in CMUCL would look into it.

Example session when compiling for CMUCL 19a (make cmucl in source dir):

|; Loading #p"/usr/home/oyvin/programmering/lisp/clg/tools/build.lisp".
|Error in batch processing:
|
|Error in function LISP::SUBSTITUTE-INTO:
|   Not enough wildcards in FROM pattern to match TO pattern:
|  #<LISP::PATTERN :MULTI-CHAR-WILD "." :MULTI-CHAR-WILD>
|*** Error code 1
|
|Stop in /usr/home/oyvin/programmering/lisp/clg/cmucl.
|*** Error code 1
|
|Stop in /usr/home/oyvin/programmering/lisp/clg.
|vequess:% head -n 2 tools/build.lisp
|(load "cl-gtk:tools;gendefpackage.lisp")
|(load "cl-gtk:tools;buildtools.lisp")
|vequess:% 

clg is available from sourceforge and linked to from cliki as well

-- 
Oyvin

From: Raymond Toy
Subject: Re: clg (GTK for Common Lisp) and CMUCL 19a
Date: 
Message-ID: <sxdr7ntv7px.fsf@edgedsp4.rtp.ericsson.se>
>>>>> "Oyvin" == Oyvin Halfdan Thuv <·····@remove.spam.oyvins.net> writes:

    Oyvin> Hi,
    Oyvin> I'm having troubles getting clg-0.51 running on CMUCL 19a. One problem
    Oyvin> is package locking (wich can be turned off by evaluating unlock-all-packages),
    Oyvin> but another problem is pathnames in the new version of CMUCL (19a) versus
    Oyvin> the earlier ones. I have found links about other problems with this (mathlisp)
    Oyvin> but the reason (or soulution) have not been properly described.

    Oyvin> I would be happy if anyone with the proper knowledge of the load funciton
    Oyvin> and "portable" pathnames in CMUCL would look into it.

    Oyvin> Example session when compiling for CMUCL 19a (make cmucl in source dir):

    Oyvin> |; Loading #p"/usr/home/oyvin/programmering/lisp/clg/tools/build.lisp".
    Oyvin> |Error in batch processing:
    Oyvin> |
    Oyvin> |Error in function LISP::SUBSTITUTE-INTO:
    Oyvin> |   Not enough wildcards in FROM pattern to match TO pattern:
    Oyvin> |  #<LISP::PATTERN :MULTI-CHAR-WILD "." :MULTI-CHAR-WILD>
    Oyvin> |*** Error code 1
    Oyvin> |

You need to provide more information, but I'm guessing there that
there is a logical-pathname-translation of the form

      '("**;*.*.*" "/real/physical/path/**/*.*.*")

If so, you should probably change that to

      '("**;*.*.*" "/real/physical/path/**/*.*")

I think.  More info would certainly help

Ray
From: Oyvin Halfdan Thuv
Subject: Re: clg (GTK for Common Lisp) and CMUCL 19a
Date: 
Message-ID: <7ofz49wisj.fsf@apollo.orakel.ntnu.no>
Raymond Toy <···········@ericsson.com> writes:

> You need to provide more information, but I'm guessing there that
> there is a logical-pathname-translation of the form
> 
>       '("**;*.*.*" "/real/physical/path/**/*.*.*")
> 
> If so, you should probably change that to
> 
>       '("**;*.*.*" "/real/physical/path/**/*.*")

Yes, indeed. I found this in the makefile:

|PATHNAMES=-eval '(setf (logical-pathname-translations "cl-gtk") (quote (("obj;*
|.*.*" "$(top_srcdir)/cmucl/*.*.*") ("**;*.*.*" "$(top_srcdir)/**/*.*.*"))))'

I tried your suggested changes, which went just fine, exept that it still would
not load files in the ./src directory.

How is all this working actually?

-- 
Oyvin
From: Raymond Toy
Subject: Re: clg (GTK for Common Lisp) and CMUCL 19a
Date: 
Message-ID: <sxdy8i1tlct.fsf@edgedsp4.rtp.ericsson.se>
>>>>> "Oyvin" == Oyvin Halfdan Thuv <·····@remove.spam.oyvins.net> writes:

    Oyvin> Raymond Toy <···········@ericsson.com> writes:
    >> You need to provide more information, but I'm guessing there that
    >> there is a logical-pathname-translation of the form
    >> 
    >> '("**;*.*.*" "/real/physical/path/**/*.*.*")
    >> 
    >> If so, you should probably change that to
    >> 
    >> '("**;*.*.*" "/real/physical/path/**/*.*")

    Oyvin> Yes, indeed. I found this in the makefile:

    Oyvin> |PATHNAMES=-eval '(setf (logical-pathname-translations "cl-gtk") (quote (("obj;*
    Oyvin> |.*.*" "$(top_srcdir)/cmucl/*.*.*") ("**;*.*.*" "$(top_srcdir)/**/*.*.*"))))'

    Oyvin> I tried your suggested changes, which went just fine, exept that it still would
    Oyvin> not load files in the ./src directory.

    Oyvin> How is all this working actually?

I don't know.  I don't want to download clg just to find out
either. :-)

Try to get to the debugger and enter

    (translate-logical-pathname "cl-gtk:obj;foo.fasl")

and

    (translate-logical-pathname "cl-gtk:<some>;<path>;foo.lisp")

and see what they say.  I think that will tell you what is going on
and why it's not loading files from the ./src directory.

Ray