How do I modify the EFM32 linker script in Simplicity IDE?
By default, Simplicity IDE uses the part specified in the project properties to automatically copy the default linker script for the device to the build (debug/release) folder.
To make any changes to this default linker script, users must configure a project to use a custom linker script.
Follow the instructions below to modify an existing linker script:
Build the project to automatically copy the default linker script to the build folder.
Copy the default linker script from the debug or release build folder to a different folder in the project by using the copy/paste context menu or ctrl+drag the file from one folder to another in the Project Explorer.
Edit the newly copied linker script (.ld) file.
Open the project properties.
Under C/C++ Build->Settings->Memory Layout, check the Use custom linker script check box and enter the path to the newly created linker script.
Rebuild the project. The linker will now use the custom linker script, which can be modified. For example, change the flash location to make a bootloader application project that will be downloaded to a different location in flash.
Knowledge Base Articles
I do not see "Use custom linker script" Under C/C++ Build->Settings->GNU ARM C Linker->General.
Just updated my Simplicity IDE to be the latest. 3/20/2015
I edited the article to indicate this change.
Thanks a lot for pointing out this.
This was a very helpful article. Thanks
Is it possible to specify a project-relative path for the custom linker script?
We are currently using the IDE to manage/update the makefiles on developer's machines but we also need to build the project on CI servers and this is currently the blocking issue. If we specify a symbolic path to link script, like ...