This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


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: CFT: Move unwinder to toplevel libgcc


On Fri, 2011-07-22 at 20:41 +0200, Rainer Orth wrote:

> I'm an idiot: I've just copied the relevant lines from
> gcc/config/t-linux, forgetting that libgcc-glibc.ver still lives in
> gcc/config.
> 
> ibgcc/config/t-linux should be
> 
> # Override t-slibgcc-elf-ver to export some libgcc symbols with
> # the symbol versions that glibc used.
> SHLIB_MAPFILES += $(gcc_srcdir)/config/libgcc-glibc.ver
> 
> instead.
> 
> AFAICS, you will need both the generic gcc/config/libgcc-glibc.ver and
> gcc/config/ia64/libgcc-glibc.ver.
> 
> 	Rainer


Well, I see "-Wl,--version-script=libgcc.map" on the link line now but I
still get an error during the link:

/wsp/sje/gcc_git/gcc-ia64-debian-linux-gnu-gcc/ia64-debian-linux-gnu/bin/ld: ./libgcc_s.so.1.tmp: version node not found for symbol _Unwind_GetBSP@GCC_3.3.2
/wsp/sje/gcc_git/gcc-ia64-debian-linux-gnu-gcc/ia64-debian-linux-gnu/bin/ld: failed to set dynamic section sizes: Bad value
collect2: error: ld returned 1 exit status
make[3]: *** [libgcc_s.so] Error 1
make[3]: Leaving directory `/wsp/sje/gcc_git/build-ia64-debian-linux-gnu-gcc/obj_gcc/ia64-debian-linux-gnu/libgcc'
make[2]: *** [all-stage1-target-libgcc] Error 2
make[2]: Leaving directory `/wsp/sje/gcc_git/build-ia64-debian-linux-gnu-gcc/obj_gcc'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/wsp/sje/gcc_git/build-ia64-debian-linux-gnu-gcc/obj_gcc'
make: *** [bootstrap] Error 2

I think the contents of the map file may be wrong.  This error involves a different symbol then when the
mapfile was missing.

>From the log file:

sed -e 's/__PFX__/__/g' < /wsp/sje/gcc_git/src/gcc/libgcc/libgcc-std.ver.in > libgcc-std.ver
cat libgcc-std.ver /wsp/sje/gcc_git/src/gcc/libgcc/../gcc/config/libgcc-glibc.ver | ...

I am not sure I am getting the right libgcc-*.ver files yet.  I think I need gcc/config/ia64/libgcc-glibc.ver
and/or gcc/config/ia64/libgcc-ia64.ver and I am not sure I am getting them.

I do see:

echo SHLIB_MAPFILES = 'libgcc-std.ver $(gcc_srcdir)/config/libgcc-glibc.ver $(gcc_srcdir)/config/ia64/libgcc-ia64.ver $(gcc_srcdir)/config/ia64/libgcc-glibc.ver' >> tmp-libgcc.mvars

So maybe I am getting the right files, I'm just not sure.

Steve Ellcey
sje@cup.hp.com





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