Hi,

On Thu, 10 Nov 2011, Steve Ellcey wrote:

> This patch (r181172) has broken my bootstrap of IA64 Linux and I am
> trying to figure out what to do about it.
> 
> The failure happens while building libunwind (I did not configure with
> --with-system-libunwind):
> 
> /ctires/gcc/nightly/build-ia64-redhat-linux-gnu-trunk/obj_gcc/./gcc/xgcc 
> -B/ctires/gcc/nightly/build-ia64-redhat-linux-gnu-trunk/obj_gcc/./gcc/ 
> -B/ctires/gcc/nightly/gcc-ia64-redhat-linux-gnu-trunk/ia64-redhat-linux-gnu/bin/
>  
> -B/ctires/gcc/nightly/gcc-ia64-redhat-linux-gnu-trunk/ia64-redhat-linux-gnu/lib/
>  
> -isystem 
> /ctires/gcc/nightly/gcc-ia64-redhat-linux-gnu-trunk/ia64-redhat-linux-gnu/include
>  
> -isystem 
> /ctires/gcc/nightly/gcc-ia64-redhat-linux-gnu-trunk/ia64-redhat-linux-gnu/sys-include
>  
> -O2 -g -O2 -DIN_GCC -DUSE_LIBUNWIND_EXCEPTIONS -W -Wall -Wno-narrowing 
> -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes 
> -Wold-style-definition -isystem ./include -fPIC -DUSE_GAS_SYMVER -g 
> -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -shared 
> -nodefaultlibs -Wl,-h,libunwind.so.7 -Wl,-z,text -Wl,-z,defs -o 
> ./libunwind.so.7.tmp -g -O2 -B./ fde-glibc_s.o unwind-ia64_s.o -lc && rm 
> -f ./libunwind.so && if [ -f ./libunwind.so.7 ]; then mv -f 
> ./libunwind.so.7 ./libu
>  nwind.so.7.backup; else true; fi && mv ./libunwind.so.7.tmp ./libunwind.so.7 
> && ln -s libunwind.so.7 ./libunwind.so
> 
> fde-glibc_s.o:(.IA_64.unwind_info+0x28): undefined reference to 
> `__gcc_personality_v0'

Hmm, this is defined in libgcc_s and in libgcc_eh, but libunwind is linked 
with -nodefaultlibs.  I think it makes sense to require the unwinder to 
not throw or catch exceptions itself, hence -fno-exceptions should be the 
correct flag to compile it ...

> Looking at fde-glibc_s.o and unwind-ia64_s.o before your patch I see 
> that there are no references to __gcc_personality_v0.  Looking at the 
> email and PR 50857 made me think that maybe we should compile these 
> files with -fno-exceptions but the Makefile is currently explicitly 
> compiling them with -fexceptions

... so this seems incorrect.  I'd try adding -fno-exceptions for the 
LIBUNWIND objects, it should work.


Ciao,
Michael.

Reply via email to