The messages from the printf function can be displayed in the OpenOCD console in using the following steps:
- In the Project Properties, select C/C++ Build, then Settings. In the MCU GCC Linker menu, select Miscellaneous, then update the Linker flags field with :
-specs=nosys.specs -specs=nano.specs -specs=rdimon.specs -lc -lrdimon

- Exclude from build the syscall.c file if it belongs to the project. To do so, right click on the syscall.c file, select Resource Configurations and then Exclude from build:

- Add the following function prototype above the main function:
extern void initialise_monitor_handles(void);

- Add the following function call in the body of the main function (before any printf call):
initialise_monitor_handles();

- In Debug Configurations add the following option in the Startup Tab:
monitor arm semihosting enable

- Then get the printf messages in the OpenOCd console:
