This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Some Question about the Linker script in ecos.
- From: Gary Thomas <gary at chez-thomas dot org>
- To: Qiang Huang <jameshq at liverpool dot ac dot uk>
- Cc: "Ecos-Discuss (E-mail)" <ecos-discuss at sources dot redhat dot com>
- Date: 28 Jun 2002 04:42:09 -0600
- Subject: Re: [ECOS] Some Question about the Linker script in ecos.
- References: <003b01c21e8e$a5a6b330$1072fd8a@dikhuit>
On Fri, 2002-06-28 at 04:29, Qiang Huang wrote:
> Hi:
> I am trying to figure out how the linker script works in ecos. I have
> some question about the linker scipt in ecos.
> take ARM E7T as example. There is a linker script in
> hal\arm\arch\src\arm.ld, in
> \hal\arm\e7t\current\include\pkgconf\mlt_arm_e7t_ram.ldi and
> mlt_arm_e7t_ram.mlt, so what is different between those two files in the
> \e7t\ directory with the one called arm.ld in \hal\arm\arch? If I build the
> app using ARM E7T default template which linker script will be used during
> the process building the ecos library? also which will be used while I try
> to link my app with the built ecos library? Thanks for your help.
The appropriate "mlt*ldi" and the architecture file "arm.ld" are
combined to create "target.ld", which is what actually gets passed to
the linker. Think of it like this: "arm.ld" is the template and the
"mlt*ldi" file are the specifics for how to instantiate that template
to create the actual linker file which in turn describes how the program
will be laid out in memory.
The "mlt*.mlt" files are an internal representation of the "mlt*.ldi"
files, used by the "Memory Layout Tool"
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss