Continue of part 1.
First of all, let us select the proper processor type. Using the Cortex-M3 processor, we go to the Project->Properties menu (or right-click on the project name in the project explorer and select Properties). First in the Tool Settings list is Target Processor. So we select processor cortex-m3:
Be sure to choose settings for all configurations, so you don’t have to do this twice when selecting Debug or Release.
The next important step is the linker script. To show where the linker script is located, we need to locate the ARM Sourcery Windows GCC C Linker. Then, in the General sub-menu, we need to show where the linker script is located.
To make things easier in the future it is better to enter a workspace related path.
Enter in Script file (-T) field following:
If you click on the ARM Sourcery Windows GCC C Linker item you will be able to see if the 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 the root directory. The easiest way to do it by clicking an icon with a plus sign and browse to directories using the Workspace… button:
It seems that we have all we need to start the compilation. Select the release configuration by clicking the button:
Then build a project by selecting Project->Build All. Hopefully, there are no mistakes in the project source, and you will see the result:
You are done. Settings are straightforward comparing to writing or editing makefile. When writing a project, you usually will add new files or try different things. The problem is that with each action, you would end up editing the makefile manually. ARM GCC Plug-in does this automatically. The only thing you have to do is to show a patch of tour files in settings. Here are project files from example [ST32blinky ~600kB], if you want to try it yourself.
I hope you enjoyed this tutorial and didn’t hesitate to comment if some parts need more explanation or correction.