A family of Eclipse CDT extensions and tools for GNU ARM & RISC-V development

GNU ARM Eclipse plug-ins v2.7.1-201503211846 released

Posted on March 21, 2015 by Liviu Ionescu.

Version 2.7.1-201503211846 is a new release; the main improvements include: a new set of preferences pages to configure the debug tools paths (J-Link, OpenOCD); as a homage to the team who created the former CodeRed suite, a new debug perspective named CodeRed was added, intended to be compatible with the CodeRed Develop perspective.

[feature-requests:#86] new J-Link and OpenOCD preferences pages were added, to configure the executable name and the location of the binaries;

[feature-requests:#89] in the Peripherals view, when displaying registers that changed since the previous halt, instead of a single colour (yellow) to mark changed values, three shades of yellow are used in a fading way to also show values changed by the previous and the previous-previous steps;

[feature-requests:#88] a new preferences page was added to configure the colours use by the the Peripherals view;

a new debug perspective named CodeRed was added, to better use the screen space; this is packed as a new Eclipse feature and requires to Install New Software…, a Check for Updates might not install it;

new Linaro toolchains were added (Linaro ARMv7 bare-metal EABI, Linaro ARMv7 big-endian bare-metal EABI); the name of Linaro ARMv7 big-endian Linux GNU EABI HF was slightly edited to match the naming convention used by the other toolchain;

[feature-requests:#59] to help others integrate the GNU ARM Eclipse plug-ins in their Eclipse suites, default values can now be used to configure most of the tools processing and debugger GUI elements;

[bugs:#141] the J-Link specific Connect to running target was re-enabled, since recent SEGGER releases fixed the initial bugs and this very powerful debug feature is now fully functional;

for Windows users, a new command line option (-nogui) was added when starting the J-Link GDB Server, to prevent displaying the annoying GUI windows on top of Eclipse windows;

The following bugs were addressed:

[bugs:#171] in certain conditions the new Tools Path property page was also visible for other projects managed than those managed by GNU ARM Eclipse; fixed

[bugs:#174] in certain conditions when launching OpenOCD externally, the plug-in was not able to perform properly; fixed

[bugs:#170] in certain conditions the tools paths auto-discovered from the Windows registry did not use POSIX separators; fixed

[bugs:#169] the plug-ins were quite chatty on the console; tests of specific conditions were added to all these debug trace messages;

[bugs:#168] for debug launch configurations created by external wizards, some of the CDT specific attributes had no defaults and the debug session failed to start; fixed

[bugs:#137, #107] in certain conditions, wrong commands passed in the debugger configuration windows did not properly reach the user; fixed

In the projects generated by the templates, the following issues were addressed:

[support-requests:#116] when using LTO, the exception handlers were excluded from the build, probably because they were referred only from assembly; they were marked as used and are now always included;

to help debugging, the exception handlers are now terminated with an explicit BKPT instruction, that activates the debugger and shows the exact line where execution stopped;

Known problems:

(2015-03-31) the template for the stm32f411 has a problem in the vectors_stm32f4xx.c file, generating the core vectors twice; the workaround is to remove the vectors after the #elif defined(STM32F411xE), from WWDG_IRQHandler to ADC_IRQHandler; the fix will be included in the next release.

Notes:

the new J-Link configuration pages require SEGGER J-Link version 4.98 or latter. Using older version will trigger a warning in the console, because the -nogui command line option was not previously supported.