[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [arm-gnu] Some problems with undefined reference to `__aeabi_unwind_cpp_*'


  • To: arm-gnu@xxxxxxxxxxxxxxxx
  • Subject: Re: [arm-gnu] Some problems with undefined reference to `__aeabi_unwind_cpp_*'
  • From: Julien Iguchi-Cartigny <kartoch@xxxxxxxxx>
  • Date: Tue, 2 Feb 2010 15:10:03 +0100

Hello,

I've a small problem when building my image. I want interruption
vectors to be put in 0x100, but the compiler inserts the two following
codes:

00000100 <__do_global_dtors_aux>:
     100:       e92d4010        push    {r4, lr}
     104:       e59f4028        ldr     r4, [pc, #40]   ; 134 <AIC_SPU>
     108:       e5d43000        ldrb    r3, [r4]
     10c:       e3530000        cmp     r3, #0
     110:       1a000005        bne     12c <AIC_ISCR>
     114:       e59f001c        ldr     r0, [pc, #28]   ; 138 <AIC_SPU+0x4>
     118:       e3500000        cmp     r0, #0
     11c:       159f0018        ldrne   r0, [pc, #24]   ; 13c <AIC_SPU+0x8>
     120:       11a00000        movne   r0, r0
     124:       e3a01001        mov     r1, #1
     128:       e5c41000        strb    r1, [r4]
     12c:       e8bd4010        pop     {r4, lr}
     130:       e12fff1e        bx      lr
     134:       000012a4        .word   0x000012a4
     138:       00000000        .word   0x00000000
     13c:       000012a0        .word   0x000012a0

00000140 <frame_dummy>:
     140:       e92d4008        push    {r3, lr}
     144:       e59f3034        ldr     r3, [pc, #52]   ; 180 <EBI_PAGES>
     148:       e3530000        cmp     r3, #0
     14c:       159f0030        ldrne   r0, [pc, #48]   ; 184 <EBI_PAGES+0x4>
     150:       159f1030        ldrne   r1, [pc, #48]   ; 188 <EBI_PAGES+0x8>
     154:       11a00000        movne   r0, r0
     158:       e59f002c        ldr     r0, [pc, #44]   ; 18c <EBI_PAGES+0xc>
     15c:       e5901000        ldr     r1, [r0]
     160:       e3510000        cmp     r1, #0
     164:       0a000003        beq     178 <frame_dummy+0x38>
     168:       e59f3020        ldr     r3, [pc, #32]   ; 190 <EBI_PAGES+0x10>
     16c:       e3530000        cmp     r3, #0
     170:       11a0e00f        movne   lr, pc
     174:       112fff13        bxne    r3
     178:       e8bd4008        pop     {r3, lr}
     17c:       e12fff1e        bx      lr
     180:       00000000        .word   0x00000000
     184:       000012a0        .word   0x000012a0
     188:       000012a8        .word   0x000012a8
     18c:       0000120c        .word   0x0000120c
     190:       00000000        .word   0x00000000

00000194 <__main>:
     194:       ea000023        b       228 <InitReset>

Some messages found in some mailing-list suggest that these two
methods seem related to gcc. But I can't remove them, or even move
them in the binary. Any ideas ?

Regards,

Julien.

On Sat, Jan 30, 2010 at 11:53 PM, Julien Iguchi-Cartigny
<kartoch@xxxxxxxxx> wrote:
> Hello,
>
> On 01/29/2010 11:06 PM, Daniel Jacobowitz wrote:
>>
>> No, EGLIBC is used in arm-none-linux-gnueabi Lite toolchains.  Newlib
>> is used in arm-none-eabi Lite toolchains.
>>
>
> Thank you, I mixed up both toolchains. It is working better now.
>
>> Please look at the sample linker scripts provided with Sourcery G++
>> Lite.  You need to link in a hosting library, probably
>> libcs3unhosted.a - unless you need _write to work
>
> Yes, but i couldn't go very far: the libc functions metionned in my previous
> mail has dependencies with _cs3 symbols, and I don't want to include libcs3*
> components (It would require lot of modifications in my project, especially
> my LD files).
>
> I think the best way to resolve this symbol is to use the nosys or arm
> versions of libgloss from newlib. But it seems not included in the
> arm-non-eabi distribution, I am right ?
>
> Thank you very much for your help.
>
> Regards,
>
> Julien.
>



-- 
"Trouble-a-cat limited"