This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: ld segfaults building kernel
On Tuesday 19 September 2006 21:45, MatthewLCreech@eaton.com wrote:
> Hi, I'm having trouble getting the Linux kernel to link properly when
> compiled with -fasynchronous-unwind-tables for ARM (EABI). The
> ARM-Linux folks aren't familiar with this error, and suggested that I
> post here.
>...
>> > LD .tmp_vmlinux1
> > init/built-in.o:(.ARM.exidx.init.text+0x0): undefined reference to
> > `__aeabi_unwind_cpp_pr1' init/built-in.o:(.ARM.exidx.init.text+0x68):
> > undefined reference to `__aeabi_unwind_cpp_pr1'
If you want to use unwinding you need the corresponding runtime libray.
For normal application this is provided by libgcc. However the kernel
provides its own runtime library.
The unwinding interface is part of the EABI:
http://www.arm.com/products/DevTools/ABI.html
Note that ARM uses a different unwinding table format to other targets, as
documented in the EABI.
Paul