I got a blinking LED (the embedded Hello World) on my STM32F4 Discovery board. It probably would have been easy to do, except that I was on OS X. Here are the steps I took:
- Tried a bunch of stuff.
- Switch to Linux.
- Tried a bunch more stuff.
- Took a break.
- Found this extremely correct page, which helped me build a real ARM toolchain.
- Built stlink.
- Built some of the stlink samples.
- Got gdb going with the stlink gdbserver.
- Stepped through some code in RAM (not flashed).
- Using the stlink flash utility, flashed code I built to the board. Unplugged it and plugged it back in to confirm the code was still there.
- Flashed back the “Discovery” sample shipped with the board.
From this adventure I can confirm that summon-arm-toolchain does work if you switch to the dev branch, and that the ARM version of gdb really and truly allows interactive debugging on this tiny little dev board. Quite a step up from the AT90S4433 and early avr-gcc toolchain that I first started hacking on back in 2002.