Re: [arm-gnu] Specifying Load Address: undefined __exidx_start, __exidx_end
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [arm-gnu] Specifying Load Address: undefined __exidx_start, __exidx_end
- To: David Engraf <engraf.david@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
- Subject: Re: [arm-gnu] Specifying Load Address: undefined __exidx_start, __exidx_end
- From: Carlos O'Donell <carlos@xxxxxxxxxxxxxxxx>
- Date: Thu, 22 Dec 2005 15:56:57 -0500
On Thu, Dec 22, 2005 at 12:29:53PM +0100, David Engraf wrote:
> Tools: CodeSourcery 2005q3-2, Linux host, "bare metal" target.
>
> Target CPU: AT91R40008
>
> I want to create a new ldscript file for my hardware in order to define the
> ROM/RAM start address. When I use my own ldscript file, the linker generates
> the following error:
Thank you for your interest in our Sourcery G++ Toolchains!
> /usr/local/bin/../lib/gcc/arm-none-eabi/3.4.4/libgcc.a(unwind-arm.o): In
> function `get_eit_entry':unwind-arm.c:(.text+0x45c): undefined reference to
> `__exidx_start'
> :unwind-arm.c:(.text+0x460): undefined reference to `__exidx_end'
> collect2: ld returned 1 exit status
> make: *** [test.elf] Fehler 1
The two missing symbols are part of the exception unwinding mechanism.
> What does __exidx_start and __exidx_end do? Where should I place this
> section in my ldscript file? Is there any startup code I need, because I
> have my own startup code for the remap of the arm?
I would recommend looking at the default linker script and modifying as
required.
Cheers,
Carlos.
--
Carlos O'Donell
CodeSourcery, LLC
carlos@xxxxxxxxxxxxxxxx