[coldfire-gnu-discuss] GNU Linker
Mats Blide
matsblide at hotmail.com
Wed Jan 17 16:23:29 UTC 2007
Thank you for your help. I tried the compilerswitch and although it gave me
som segment overlap error in the linking it atleast created a map file that
gave me a better overview of the RAM usage.
/Mats
>From: David Brown <david at westcontrol.com>
>To: Mats Blide <matsblide at hotmail.com>
>CC: coldfire-gnu-discuss at codesourcery.com
>Subject: Re: [coldfire-gnu-discuss] GNU Linker
>Date: Wed, 17 Jan 2007 15:17:31 +0100
>
>The map file will give you a break-down by section and object file, so you
>can at least see which object file is using the space. If you need more
>detail, you can always try the "-fdata-sections" option on the compiler,
>which will put each data item in its own section. I haven't used it
>myself, but give it a shot.
>
>http://gcc.gnu.org/onlinedocs/gcc-4.1.1/gcc/Optimize-Options.html#index-fdata_002dsections-577
>
>mvh.,
>
>David
>
>
>Mats Blide wrote:
>>Thank's for your answer. I tried your suggestions, but they seam reluctant
>>to give me the sizes of individual variables. What I'am looking for is
>>something like this:
>>
>>.data 0x20000000 0x100 project/MyObjectFile.o
>> 0x20000000 0x050 MyBuffer
>> 0x20000050 0x002 MyVar
>> 0x20000052 0x048 MySomeOtherBuffer
>>
>>Now only have things like this:
>>
>>.bss 0x20003264 0x907 lwip/src/core/pbuf.o
>>
>>
>>
>>Telling me that pbuf.o consumes 0x907 bytes RAM in segment bss. And that's
>>fair enough. But I would like to se what is using that RAM.
>>
>>/Mats
>>
>>
>>
>>
>>>From: David Brown <david at westcontrol.com>
>>>To: Mats Blide <matsblide at hotmail.com>,
>>>coldfire-gnu-discuss at codesourcery.com
>>>Subject: Re: [coldfire-gnu-discuss] GNU Linker
>>>Date: Wed, 17 Jan 2007 11:38:06 +0100
>>>
>>>Mats Blide wrote:
>>>>
>>>>Hi,
>>>>
>>>>I don't know if this is the right forum, but I have notised that it is
>>>>fairly active and gives quick response. So I give it a try. I'am still a
>>>>GNU newbie.
>>>>
>>>>I'am in the process off sliming a FreeRTOS/lwIP configuration to fitt
>>>>into my limited 32K RAM. I'am used to linkers that can produce a map
>>>>file where I can se the size of every individual object, but I'am not
>>>>able to figure out how to do this with GCC. As it is now it only shows
>>>>the RAM size used by each objectfile as a whole.
>>>>
>>>>Any help appresiated highly apreceated!
>>>>
>>>>Rgds /Mats
>>>>
>>>
>>>You want something like:
>>> -Wl,-Map=program.map
>>>
>>>and possibly
>>> -Wl,--cref
>>>
>>>
>>>in the command line for gcc when doing the linking.
>>>
>>>Running m68k-elf-size on the elf file will also give you the sizes of the
>>>sections, and objdump can give more details.
>>>
>>>
>>
>>_________________________________________________________________
>>Världen bevakas på MSN http://nyheter.msn.se/
>>
>>
>
>
_________________________________________________________________
MSN bjuder på musikstreaming i en månad http://www.msn.se/music/
More information about the coldfire-gnu-discuss
mailing list