This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: framestate.c vs --enable-oldest-abi=2.2.5


> Actually not from -lgcc, but either from -lgcc_eh (for static linking) and
> -lgcc_s (for shared libs).

Ah, ok.  I will look for that in future.

> Probably yes (or in Hurd gcc specs). If gcc -static, then gcc should pass
> -lgcc_eh -lgcc on the command line and thus the registry should be
> in the link. Can you please mail gcc -v output for the failed sln link?

Since -nostdlib is used, I don't think gcc is at fault here.

redhat 32 % i686-gnu-gcc -nostdlib -nostartfiles -static -o
/home/roland/gnu/build/2iolibc/elf/sln
/home/roland/gnu/build/2iolibc/csu/crt0.o
/home/roland/gnu/build/2iolibc/csu/crti.o `i686-gnu-gcc
--print-file-name=crtbegin.o` /home/roland/gnu/build/2iolibc/elf/sln.o
-Wl,-\( /home/roland/gnu/build/2iolibc/libc.a
/home/roland/gnu/build/2iolibc/mach/libmachuser.a
/home/roland/gnu/build/2iolibc/hurd/libhurduser.a -lgcc -Wl,-\)
`i686-gnu-gcc --print-file-name=crtend.o`
/home/roland/gnu/build/2iolibc/csu/crtn.o -v
Reading specs from /usr/local/lib/gcc-lib/i686-gnu/3.2/specs
Configured with: ../../gcc/configure --host=i686-linux --target=i686-gnu :
(reconfigured)  : (reconfigured)  : (reconfigured) 
Thread model: single
gcc version 3.2 20020315 (experimental)
 /usr/local/lib/gcc-lib/i686-gnu/3.2/collect2 -m elf_i386 -static -o
 /home/roland/gnu/build/2iolibc/elf/sln
 -L/usr/local/lib/gcc-lib/i686-gnu/3.2
 -L/usr/local/lib/gcc-lib/i686-gnu/3.2/../../../../i686-gnu/lib
 /home/roland/gnu/build/2iolibc/csu/crt0.o
 /home/roland/gnu/build/2iolibc/csu/crti.o
 /usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o
 /home/roland/gnu/build/2iolibc/elf/sln.o -(
 /home/roland/gnu/build/2iolibc/libc.a
 /home/roland/gnu/build/2iolibc/mach/libmachuser.a
 /home/roland/gnu/build/2iolibc/hurd/libhurduser.a -lgcc -)
 /usr/local/lib/gcc-lib/i686-gnu/3.2/crtend.o
 /home/roland/gnu/build/2iolibc/csu/crtn.o
/usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o: In function
`__do_global_dtors_aux':
/usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o(.text+0x36): undefined
reference to `__deregister_frame_info_bases'
/usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o(.text+0x46): undefined
reference to `__deregister_frame_info_bases'
/usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o: In function `frame_dummy':
/usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o(.text+0x62): undefined
reference to `__register_frame_info_bases'
/usr/local/lib/gcc-lib/i686-gnu/3.2/crtbegin.o(.text+0x97): undefined
reference to `__register_frame_info_bases'
collect2: ld returned 1 exit status

> BTW: What binutils you used during gcc 3.1/2 configury?

Some stock RH version probably from 7.1, no visibility support.  (I'm not
really trying to make a usable build here, just identify the compile
problems.)

> If Ulrich agrees on the #if, fine. It is IMHO better to do this in one place
> then having to change 6 or how many Makefiles.

Since framestate.c is in sysdeps/generic, why not put the makefile fragment
there too and have it controlled entirely by checking $(unwind-find-fde)?
That also gets rid of the existing duplication in
sysdeps/{mach/hurd,unix/sysv/linux}/*/Makefile.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]