gcl-devel
[Top][All Lists]
Advanced

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

Re: [Gcl-devel] Problems Compiling GCL 2.5.3 on Solaris 9


From: Camm Maguire
Subject: Re: [Gcl-devel] Problems Compiling GCL 2.5.3 on Solaris 9
Date: 07 Aug 2003 13:08:31 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!

Matthew White <address@hidden> writes:

> Hello,
> 
> > > Hi,
> > > 
> > > In the short term, a tarred copy of that build would be excellent - we
> > > have a class starting here very soon that is going to use gcl.....
> > > 
> > 
> > OK, I'm building it now.  Is there a site to which I can ftp it when
> > done? 
> 
> Unfortunately there isn't an site here that you can ftp into....Can we
> arrange some other way of grabbing it?
> 

OK, try http://people.debian.org/~camm in a little while.  You may
have difficulty using this image in compiling and loading files using
setjmp, however.

> > You know that our ansi build is a work in progress, yes?
> 
> Yep.
> 
> > > On the other hand, I would of course like to help persue the error.  I
> > > patched the file, recompiled and this is what I got :-
> > > 
> > > -----------
> > > Compiling PCL_WALK...
> > > Compiling /tmp/gcl-2.5.3/unixport/../pcl/pcl_walk.lisp.
> > > End of Pass 1.  
> > > 
> > > ;; Note: Tail-recursive call of WALK-TEMPLATE was replaced by iteration.
> > > ;; Note: Tail-recursive call of WALK-TEMPLATE was replaced by iteration.
> > > ;; Note: Tail-recursive call of WALK-TEMPLATE-HANDLE-REPEAT-1 was
> > > replaced by iteration.
> > > End of Pass 2.  
> > > OPTIMIZE levels: Safety=1 (No runtime error checking), Space=0, Speed=3
> > > Finished compiling /tmp/gcl-2.5.3/unixport/../pcl/pcl_walk.o.
> > > Loading binary of PCL_WALK...
> > > 
> > > Error: Undefined symbol "setjmp"
> > > ------------
> > > 
> > 
> > OK, then please send me
> > 
> > nm pcl_walk.o |grep setjmp
> > nm saved_gcl |grep setjmp
> > nm --dynamic /lib/<your libc> |grep setjmp
> 
> Here we go :-
> 
> address@hidden pcl]$ nm pcl_walk.o | grep setjmp
> [177] |         0|       0|NOTY |GLOB |0    |UNDEF  |setjmp
> 
> address@hidden pcl]$ nm ../unixport/saved_gcl | grep setjmp
> [7569]        |   2324856|       0|FUNC |GLOB |0    |UNDEF  |setjmp
> [7245]        |   2326056|       0|FUNC |GLOB |0    |UNDEF  |sigsetjmp
> 
> address@hidden pcl]$ nm -D /lib/libc.so.1 | grep setjmp
> [1166]        |    207784|      32|FUNC |GLOB |0    |9      |_setjmp
> [884] |    207892|     172|FUNC |GLOB |0    |9      |_sigsetjmp
> [325] |    207784|      32|FUNC |WEAK |0    |9      |setjmp
> [8]   |    207892|     172|FUNC |WEAK |0    |9      |sigsetjmp
> 
> address@hidden pcl]$ nm -D /lib/libc.a | grep setjmp
> /lib/libc.a[setjmp.o]:
> /lib/libc.a[sigsetjmp.o]:
> 
> I hope this is what you are after.

Yes, thanks.  Please try this patch:

Index: sfasli.c
===================================================================
RCS file: /cvsroot/gcl/gcl/o/sfasli.c,v
retrieving revision 1.10
diff -u -r1.10 sfasli.c
--- sfasli.c    1 Mar 2003 22:37:37 -0000       1.10
+++ sfasli.c    7 Aug 2003 16:45:45 -0000
@@ -66,7 +66,8 @@
       h->u.def.section=q[u]->section;
       *c='@';
     }
-    if (!strncmp(q[u]->name,"__",2) && 
!strcmp("i3",q[u]->name+strlen(q[u]->name)-2)) {
+    if ((!strncmp(q[u]->name,"__",2) && 
!strcmp("i3",q[u]->name+strlen(q[u]->name)-2))
+       || !strcmp(q[u]->name,"setjmp")) {
       struct bfd_link_hash_entry *h;
       if 
(!(h=bfd_link_hash_lookup(link_info.hash,q[u]->name,MY_BFD_TRUE,MY_BFD_TRUE,MY_BFD_TRUE)))
        FEerror("Cannot make new hash entry",0);


On the solaris box of the autobuilder, setjmp has is reported with a
version suffix, such as setjmp@@sysv....  GCL will define and add such
symbols without their suffix.  On most machines this picks up setjmp.
Then on arm, certain symbols of the form __...i3 needed to be
defined.  So now I've added your case, but clearly we need a better
algorithm at this point.  We might be able to loop through all
symbols, defining those that are undefined in the base image, but I
thought I tried this and failed.  Hmmm.

Take care,

> 
> Thanks,
> 
> Matthew White.
> 
> > > On Thu, 2003-08-07 at 02:51, Camm Maguire wrote:
> > > > Greetings!
> > > > 
> > > > OK, our sparc solaris 'autobuilder' at the University of Texas only
> > > > builds the traditional image, as that's all they need.  I just tested
> > > > the --enable-ansi build successfully on this box, and it works, so I
> > > > can't reproduce this myself (yet).
> > > > 
> > > > (daggoo.cs.utexas.edu$ uname -a
> > > > SunOS daggoo.cs.utexas.edu 5.8 Generic_108528-11 sun4u sparc 
> > > > SUNW,Ultra-5_10
> > > > daggoo.cs.utexas.edu$ gcc -v
> > > > Reading specs from 
> > > > /lusr/gnu/lib/gcc-lib/sparc-sun-solaris2.7/3.0.3/specs
> > > > Configured with: ../gcc/configure --prefix=/lusr/gnu --enable-shared 
> > > > --enable-java-gc=boehm --enable-threads=posix 
> > > > --with-as=/lusr/gnu/bin/as --with-ld=/lusr/gnu/bin/ld
> > > > Thread model: posix
> > > > gcc version 3.0.3
> > > > )
> > > > 
> > > > If you just need a build, I can tar this up for you.  If you would
> > > > like to pursue this error, which of course is helpful for us, try this
> > > > patch:
> > > > 
> > > > Index: sfaslbfd.c
> > > > ===================================================================
> > > > RCS file: /cvsroot/gcl/gcl/o/sfaslbfd.c,v
> > > > retrieving revision 1.12
> > > > diff -u -r1.12 sfaslbfd.c
> > > > --- sfaslbfd.c  10 Feb 2003 17:48:04 -0000      1.12
> > > > +++ sfaslbfd.c  6 Aug 2003 16:45:07 -0000
> > > > @@ -294,7 +294,7 @@
> > > >        continue;
> > > >  
> > > >      if (h->type!=bfd_link_hash_defined) 
> > > > -      FEerror("Undefined symbol",0);
> > > > +      FEerror("Undefined symbol ~S",1,make_simple_string(q[u]->name));
> > > >        
> > > >      if (h->u.def.section) {
> > > >        q[u]->value=h->u.def.value+h->u.def.section->vma;
> > > > 
> > > > 
> > > > Rerun, and get the symbol name which is undefined.  We can try to
> > > > proceed from there.
> > > > 
> > > > Take care,
> > > > 
> > > > Matthew White <address@hidden> writes:
> > > > 
> > > > > Hi,
> > > > > 
> > > > > > Your problem is just coming from your bfd library in its attempt to
> > > > > > relocate one of the binary .o files on loading.  If I remember, I 
> > > > > > ran
> > > > > > into this when I setup the solaris autobuilder for the utexas 
> > > > > > people.
> > > > > > I don't know what bfd comes with solaris generically, so if memory
> > > > > > serves I setup the solaris autobuilder to compile gcl's local bfd
> > > > > > copy.  so I would suggest trying
> > > > > > 
> > > > > > --enable-ansi --disable-statsysbfd --enable-locbfd
> > > > > 
> > > > > Yep, I gave that a whirl on a completely clean slate.  Things were 
> > > > > going
> > > > > well, it compiled the local bfd library no problem, and continued
> > > > > through the compile but it died again at the exact same spot, with the
> > > > > same error as it had been previously.
> > > > > 
> > > > > I checked the 'makedefs' file and watched the compile to make sure 
> > > > > that
> > > > > when the linking was done for 'saved_gcl' that it was linking against
> > > > > the local bfd library, and it seemed that this was the case.
> > > > > 
> > > > > I should point out that I did have to make one small modification to 
> > > > > the
> > > > > 'makedefs' file. I added the location of 'libncurses.a' to LIBS, as it
> > > > > didn't seem to be picking it up during compilation.  I had been using
> > > > > the LD_LIBRARY_PATH environment variable previously to get around
> > > > > this.....So my LIBS line reads :-
> > > > > 
> > > > > LIBS= -lm  /tmp/gcl-2.5.3/binutils/bfd/libbfd.a
> > > > > /tmp/gcl-2.5.3/binutils/libiberty/libiberty.a -lsocket -lnsl 
> > > > > -lreadline
> > > > > /usr/local/lib/libncurses.a
> > > > > 
> > > > > > If you compile GCL's copy of gmp3 too, I think you might also need 
> > > > > > to
> > > > > > do the following after the main configure:
> > > > > > 
> > > > > > cd gmp3
> > > > > > ./configure --build=sparc-sun-solaris2.8
> > > > > > cd ..
> > > > > 
> > > > > I have been using GCL's copy of gmp3, and did use that configure 
> > > > > option
> > > > > this time round......
> > > > > 
> > > > > Thanks for your help so far - I'm not fully sure what else I can 
> > > > > attach
> > > > > that would assist, but let me know what extra information would help.
> > > > > 
> > > > > Thanks,
> > > > > 
> > > > > Matthew White.
> > > > > 
> > > > > > Matthew White <address@hidden> writes:
> > > > > > 
> > > > > > > Hi,
> > > > > > > 
> > > > > > > I've been trying to compile GCL 2.5.3 on Solaris 9 for a few days 
> > > > > > > now,
> > > > > > > and keep hitting the same problem.  The problem is occuring when
> > > > > > > compiling PCL, and in particular when compiling with the 
> > > > > > > 'pcl_walk.lisp'
> > > > > > > file.
> > > > > > > 
> > > > > > > Below is my build output from that section of the build:-
> > > > > > > --
> > > > > > > 
> > > > > > > (cd pcl; rm -f *.c; make all)
> > > > > > > make[1]: Entering directory `/tmp/gcl-2.5.3/pcl'
> > > > > > > rm -f *.o *gazonk*
> > > > > > > cp ../h/cmpinclude.h .
> > > > > > > echo '(load "sys-package.lisp")' '(setq *features* (delete (quote 
> > > > > > > kcl)
> > > > > > > *features*))' '(load "defsys.lisp")(push (quote kcl) *features*)' 
> > > > > > > '(setq
> > > > > > > pcl::*default-pathname-extensions* (cons "lisp" "o"))' '(setq
> > > > > > > pcl::*pathname-extensions* (cons "lisp" "o"))' '(load
> > > > > > > "sys-proclaim.lisp")' '(setq compiler::*default-h-file* t)' '(setq
> > > > > > > compiler::*default-c-file* t)' '(setq 
> > > > > > > compiler::*default-data-file* t)'
> > > > > > > '(setq compiler::*default-system-p* t)' '(setq 
> > > > > > > compiler::*keep-gaz* t)' 
> > > > > > > '(pcl::compile-pcl)' | ../unixport/saved_gcl ../unixport/
> > > > > > > GCL (GNU Common Lisp)  (2.5.3) Tue Aug  5 10:49:14 EST 2003
> > > > > > > Licensed under GNU Library General Public License
> > > > > > > Dedicated to the memory of W. Schelter
> > > > > > > 
> > > > > > > Use (help) to get some basic information on how to use GCL.
> > > > > > > 
> > > > > > > >
> > > > > > > Loading sys-package.lisp
> > > > > > > Finished loading sys-package.lisp
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > (:COMPILER :NUMLIB :SDEBUG :DEFPACKAGE TRUNCATE_USE_C BSD SPARC 
> > > > > > > SUN SGC
> > > > > > >     IEEE-FLOATING-POINT UNIX GMP GCL AKCL COMMON)
> > > > > > > 
> > > > > > > >
> > > > > > > Loading defsys.lisp
> > > > > > > Finished loading defsys.lisp
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > (KCL :COMPILER :NUMLIB :SDEBUG :DEFPACKAGE TRUNCATE_USE_C BSD 
> > > > > > > SPARC SUN
> > > > > > >      SGC IEEE-FLOATING-POINT UNIX GMP GCL AKCL COMMON)
> > > > > > > 
> > > > > > > >
> > > > > > > ("lisp" . "o")
> > > > > > > 
> > > > > > > >
> > > > > > > Loading sys-proclaim.lisp
> > > > > > > Finished loading sys-proclaim.lisp
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > T
> > > > > > > 
> > > > > > > >
> > > > > > > Compiling PCL_PKG...
> > > > > > > Compiling /tmp/gcl-2.5.3/unixport/../pcl/pcl_pkg.lisp.
> > > > > > > ; (EXPORT (INTERN # ...) ...) is being compiled.
> > > > > > > ;; Warning: The package operation (EXPORT (INTERN
> > > > > > >                                            (SYMBOL-NAME :ITERATE)
> > > > > > >                                            (FIND-PACKAGE 
> > > > > > > :ITERATE))
> > > > > > >                                           (FIND-PACKAGE 
> > > > > > > :ITERATE)) was
> > > > > > > in a bad place.
> > > > > > > ; (IN-PACKAGE :WALKER) is being compiled.
> > > > > > > ;; Warning: The package operation (IN-PACKAGE :WALKER) was in a 
> > > > > > > bad
> > > > > > > place.
> > > > > > > ; (EXPORT '(DEFINE-WALKER-TEMPLATE WALK-FORM ...)) is being 
> > > > > > > compiled.
> > > > > > > ;; Warning: The package operation (EXPORT '(DEFINE-WALKER-TEMPLATE
> > > > > > >                                             WALK-FORM
> > > > > > >                                             
> > > > > > > WALK-FORM-EXPAND-MACROS-P
> > > > > > >                                             NESTED-WALK-FORM
> > > > > > >                                             VARIABLE-LEXICAL-P
> > > > > > >                                             VARIABLE-SPECIAL-P
> > > > > > >                                             
> > > > > > > VARIABLE-GLOBALLY-SPECIAL-P
> > > > > > >                                             
> > > > > > > *VARIABLE-DECLARATIONS*
> > > > > > >                                             VARIABLE-DECLARATION
> > > > > > >                                             MACROEXPAND-ALL)) was 
> > > > > > > in a
> > > > > > > bad place.
> > > > > > > ; (IN-PACKAGE :ITERATE) is being compiled.
> > > > > > > ;; Warning: The package operation (IN-PACKAGE :ITERATE) was in a 
> > > > > > > bad
> > > > > > > place.
> > > > > > > ; (EXPORT '(ITERATE ITERATE* ...)) is being compiled.
> > > > > > > ;; Warning: The package operation (EXPORT '(ITERATE ITERATE* 
> > > > > > > GATHERING
> > > > > > >                                             GATHER WITH-GATHERING
> > > > > > >                                             INTERVAL ELEMENTS
> > > > > > >                                             LIST-ELEMENTS 
> > > > > > > LIST-TAILS
> > > > > > > 
> > > > > > >                                             PLIST-ELEMENTS 
> > > > > > > EACHTIME
> > > > > > >                                             WHILE UNTIL COLLECTING
> > > > > > >                                             JOINING MAXIMIZING
> > > > > > >                                             MINIMIZING SUMMING
> > > > > > >                                             *ITERATE-WARNINGS*)) 
> > > > > > > was in
> > > > > > > a bad place.
> > > > > > > ; (IN-PACKAGE :PCL) is being compiled.
> > > > > > > ;; Warning: The package operation (IN-PACKAGE :PCL) was in a bad 
> > > > > > > place.
> > > > > > > ; (IMPORT '(STRUCTUREP STRUCTURE-DEF ...)) is being compiled.
> > > > > > > ;; Warning: The package operation (IMPORT '(STRUCTUREP 
> > > > > > > STRUCTURE-DEF
> > > > > > >                                             STRUCTURE-REF)) was 
> > > > > > > in a bad
> > > > > > > place.
> > > > > > > ; (SHADOW 'LISP:DOTIMES) is being compiled.
> > > > > > > ;; Warning: The package operation (SHADOW 'LISP:DOTIMES) was in a 
> > > > > > > bad
> > > > > > > place.
> > > > > > > ; (IN-PACKAGE "SI") is being compiled.
> > > > > > > ;; Warning: The package operation (IN-PACKAGE "SI") was in a bad 
> > > > > > > place.
> > > > > > > ; (EXPORT '(%STRUCTURE-NAME %COMPILED-FUNCTION-NAME ...)) is being
> > > > > > > compiled.
> > > > > > > ;; Warning: The package operation (EXPORT '(%STRUCTURE-NAME
> > > > > > >                                             
> > > > > > > %COMPILED-FUNCTION-NAME
> > > > > > >                                             
> > > > > > > %SET-COMPILED-FUNCTION-NAME
> > > > > > >                                             %INSTANCE-REF
> > > > > > >                                             %SET-INSTANCE-REF)) 
> > > > > > > was in a
> > > > > > > bad place.
> > > > > > > ; (IN-PACKAGE 'PCL) is being compiled.
> > > > > > > ;; Warning: The package operation (IN-PACKAGE 'PCL) was in a bad 
> > > > > > > place.
> > > > > > > ; (SHADOW 'DOCUMENTATION) is being compiled.
> > > > > > > ;; Warning: The package operation (SHADOW 'DOCUMENTATION) was in 
> > > > > > > a bad
> > > > > > > place.
> > > > > > > End of Pass 1.  
> > > > > > > End of Pass 2.  
> > > > > > > OPTIMIZE levels: Safety=1 (No runtime error checking), Space=0, 
> > > > > > > Speed=3
> > > > > > > Finished compiling /tmp/gcl-2.5.3/unixport/../pcl/pcl_pkg.o.
> > > > > > > Loading binary of PCL_PKG...
> > > > > > > Compiling PCL_WALK...
> > > > > > > Compiling /tmp/gcl-2.5.3/unixport/../pcl/pcl_walk.lisp.
> > > > > > > End of Pass 1.  
> > > > > > > 
> > > > > > > ;; Note: Tail-recursive call of WALK-TEMPLATE was replaced by 
> > > > > > > iteration.
> > > > > > > ;; Note: Tail-recursive call of WALK-TEMPLATE was replaced by 
> > > > > > > iteration.
> > > > > > > ;; Note: Tail-recursive call of WALK-TEMPLATE-HANDLE-REPEAT-1 was
> > > > > > > replaced by iteration.
> > > > > > > End of Pass 2.  
> > > > > > > OPTIMIZE levels: Safety=1 (No runtime error checking), Space=0, 
> > > > > > > Speed=3
> > > > > > > Finished compiling /tmp/gcl-2.5.3/unixport/../pcl/pcl_walk.o.
> > > > > > > Loading binary of PCL_WALK...
> > > > > > > 
> > > > > > > Error: Undefined symbol
> > > > > > > Error signalled by OR.
> > > > > > > Broken at SYSTEM::BREAK-LEVEL.  Type :H for Help.
> > > > > > > >>patch -p0 <pcl_methods.patch
> > > > > > >   Looks like a unified context diff.
> > > > > > > File to patch: ^Cmake[1]: *** [pcl_boot.c] Error 3
> > > > > > > make: *** [unixport/saved_pcl_gcl] Interrupt
> > > > > > > 
> > > > > > > --
> > > > > > > 
> > > > > > > The only "configure" option that I used was --enable-ansi, but it 
> > > > > > > seems
> > > > > > > to be occuring with or without it.
> > > > > > > 
> > > > > > > The gcc version that I'm using is :-
> > > > > > >   gcc version 2.95.3 20010315 (release)
> > > > > > > 
> > > > > > > I was just wondering whether anyone else had come across the same
> > > > > > > problem, or had any ideas of what I could look into to try and 
> > > > > > > solve it
> > > > > > > - any pointers would be appreciated!!
> > > > > > > 
> > > > > > > Thanks,
> > > > > > > 
> > > > > > > Matthew White.
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > > > _______________________________________________
> > > > > > > Gcl-devel mailing list
> > > > > > > address@hidden
> > > > > > > http://mail.gnu.org/mailman/listinfo/gcl-devel
> > > > > > > 
> > > > > > > 
> > > > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > _______________________________________________
> > > > > Gcl-devel mailing list
> > > > > address@hidden
> > > > > http://mail.gnu.org/mailman/listinfo/gcl-devel
> > > > > 
> > > > > 
> > > > > 
> > > 
> > > 
> > > 
> > > 
> 
> 
> 
> 

-- 
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]