Linker problems with arm-none-eabi 3.4.4
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Linker problems with arm-none-eabi 3.4.4



Hello,

I have a 'bare metal' (no OS) project running on an ARM926EJ-S.  I was
previously (successfully) using the CodeSourcery tools v. 3.4.3.  I am
trying to move forward to 3.4.4 and noticed some linker problems.

From a previous post, I see that I need to remove the compiler flags -mapcs
-mapcs-gnu.  This resolved the first batch of problems, but I still see a
couple that I don't fully understand:

Next, I get a linker error for "no memory region specified for loadable
section '.ARM.extab' (strange, since I didn't get this with v 3.4.3).

Looking at the example linker files, I can add sections to my .lds file that
will give 0-byte allocations for sections that might be required by the
linker.  I think the sections would look like this:

  .ARM.extab 0 : { *(.ARM.extab) }
  .ARM.exidx 0 : { *(.ARM.exidx) }

Once I add these, I get some unresolved reference problems (undefined
reference to '__exidx_end' ).

Since I don't fully understand these errors, I'm not exactly sure where to
look next for more information.  I looked around for some change notes that
might describe the linker differences between 3.4.3 and 3.4.4; unfortunately
I didnt really find anything.

Is it possible that someone recommend what I might need to do next? ( or
perhaps recommend the right man page or some kind of technical reference
that might help me understand the nature of the problem).

Thanks!

Matt