Después de un largo experimento, puedo decir que es posible compilar los STM32Snippets con la cadena de herramientas integrada GCC ARM. Los Snippets contienen los archivos necesarios, excepto el archivo enlazador. Usé un archivo enlazador copiado de STM32CubeMX (plantilla SW4STM32) pero creo que también se pueden usar otros scripts.
Es necesario copiar dos archivos de la carpeta de plantillas de Fragmentos (Controladores / CMSIS / Dispositivo / ST / STM32L0xx / Fuente / Plantillas). El primero es system_stm32l0xx.c y el segundo es el archivo de ensamblaje de inicio apropiado de la subcarpeta gcc. (Sí, parece ser un soporte parcial para gcc). Utilicé startup_stm32l053xx.s porque uso la placa Nucleo. Si los Fragmentos descargados se extraen a los fragmentos de carpeta y arm-none-eabi-gcc está en su ruta, puede usar el siguiente código:
arm-none-eabi-gcc -DSTM32L053xx -Wall -g -mthumb -mcpu=cortex-m0plus -march=armv6-m -mlittle-endian -Isnippets/Drivers/CMSIS/Include -Isnippets/Drivers/CMSIS/Device/ST/STM32L0xx/Include -Wl,--gc-sections,-Map=main.map -Tstm32l053xx.ld -L. system_stm32l0xx.c startup_stm32l053xx.s main.c -o main.elf
Finalmente se produce un contenedor para cargar en Nucleo.
arm-none-eabi-objcopy -O binary main.elf main.bin