Doubt in Linker Script

Hi all,

I am a newbie to this field of microcontrollers. So pardon me if my question is very basic.

I am using a GNUARM compiler and Eclipse IDE. I am trying to run a sample application which was developed using WinARM. Is it possible to run this application using GNUARM? If so, what are the changes that I have to make?

One more doubt that I have is regarding a linker script. How to write a linker script file? Can I use the same linker script file that has been developed for other application that runs on the same microcontroller? On the whole what I want to know is that Is a linker script controller specific or application specific?

Any help regarding this topic is appreciated!!!

OST

Hi

The arm code for your microcontroller you get from WinARM is the same as the code from gnuarm, it is the same compiler but the compiler is running under Windows.

Linker scripts are quite general, you can use almost the same linker script even for different microcontrollers. Typically the only part that must be changed is the size and location of flash and ram memory. The linker script is dependent on the compiler you use and there are some symbols used by the startup code that are defined in the linker script.

Another situation that requres a differnt linker script is when the code should be loaded and run from ram instead of flash.

Regards,

Magnus