编译工程,会出现如下错误:
Error: L6200E: Symbol SystemCoreClock multiply defined (by system_stm32f4xx_1.o and system_stm32f4xx.o).
Error: L6200E: Symbol AHBPrescTable multiply defined (by system_stm32f4xx_1.o and system_stm32f4xx.o).
Error: L6200E: Symbol APBPrescTable multiply defined (by system_stm32f4xx_1.o and system_stm32f4xx.o).
rror: L6200E: Symbol SVC_Handler multiply defined (by stm32f4xx_it.o and irq_cm4f.o).
(单击图片可放大)
同样的,这是由于STM32CubeMX生成的工程所包含的文件"system_stm32f4xx.c"(Drivers/CMSIS工程文件夹下,见下图)中,已经存在上面编译错误中的段。这和工程中的文件"system_stm32f4xx.c"(Deviece工程文件夹下,见下图)中的代码相冲突:
将Drivers/CMSIS工程文件夹中的"system_stm32f4xx.c"排除在编译之外。右键第一个system_stm32f4xx.c,移除即可
参考资料: