Setting up Eclipse to work with GNU ARM plug-in. Part 2.

Continue of part 1.

First of all lets select proper processor type. As we are using Cortex-M3 processor then we go to Project->Properties menu (or right click on project name in project explorer and select Properties). First in Tool Settings list is Target Processor. So we select processor cortex-m3:

Be sure to select settings for all configurations so you don’t have to do this twice when selecting Debug or Release.

Next important step is linker script. To show where linker script is located we need locate ARM Sourcery Windows GCC C Linker. Then in General sub-menu we need to show where linker script is located.

To make things easier in future it is better to enter workspace related path.

Enter in Script file (-T) field following:


If you click on ARM Sourcery Windows GCC C Linker item you will be able to see if path was generated correctly:

One important thing is left – to show where all header (.h) files are located. To do so we need to go to Settings->Tools Settings->ARM Sourcery Windows GCC C Compiler-> Directories:

So we need to add all our project directories where header files are located including root directory. Easiest way to do is by clicking icon with plus sign and browse to directories using Workspace… button:

It seems that we have all we need to start compilation. Select release configuration by clicking button:

Then build project by selecting Project->Build All. Hopefully there is no mistakes in project source and you will see the result:

You are done. Settings are really easy comparing to writing or editing makefile. When writing project you usually will add new files, or try different things. Problem is that with each action you would end up with editing makefile manually. ARM GCC Plug-in does this automatically. Only thing you have to do is to show patch of tour files in settings. If you want to try it yourself here is project files from example [ST32blinky ~600kB].

Hope you enjoyed this tutorial and don’t hesitate to comment if there are some parts that needs more explanation or correction.

Leave a Reply

Your email address will not be published. Required fields are marked *