Удалось решить проблему.
Собрал свой проектик в Keil, настроил Keil на GCC компилятор. Скомпилировал и все заработало.
Посмотрел какие ключи компилятора и линкера генерит Keil.
Вставил их в свой makefile и порядок.
Вот исходный фрагмент моего makefile
Код
OPTIMIZATION = -Os
CFLAGS = -mcpu=cortex-m3 -mthumb -Wall -g $(OPTIMIZATION) $(INCLUDES) -DSTM32F10X_MD
LDFLAGS = -Wl,--gc-sections,-Map=$@.map,-cref,-u,Reset_Handler -T STM32.ld
а вот с исправлениями из Keil
Код
CFLAGS = -c -mcpu=cortex-m3 -mthumb -Wall -gdwarf-2 -Os -mapcs-frame
CFLAGS += $(INCLUDES)
CFLAGS += -Wall
LDFLAGS = -T link.ld -mcpu=cortex-m3 -mthumb -nostartfiles -Wl,-Map=.map -lm
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.