cannot make pass,so need to modfy makefile,you can copy this makefile that can make pass
##########################################################################################################################
File automatically-generated by tool: [projectgenerator] version: [4.1.0] date: [Fri Nov 17 10:55:26 CST 2023]
##########################################################################################################################
------------------------------------------------
Generic Makefile (based on gcc)
ChangeLog :
2017-02-10 - Several enhancements + project update mode
2015-07-22 - first version
------------------------------------------------
######################################
target
###################################### TARGET = Maglev-v0.1
######################################
building variables
######################################
debug build?
DEBUG = 1
optimization
OPT = -Og
#######################################
paths
#######################################
Build path
BUILD_DIR = build
######################################
source
######################################
C sources
C_SOURCES =
Core/Src/main.c
Core/Src/gpio.c
Core/Src/adc.c
Core/Src/tim.c
Core/Src/usart.c
Core/Src/stm32f4xx_it.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_gpio.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_adc.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_rcc.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_utils.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_exti.c
Core/Src/system_stm32f4xx.c
Core/Src/dma.c
Core/Src/i2c.c
Core/Src/spi.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_i2c.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_dma.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_spi.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_tim.c
Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_usart.c
User/ADC/adc_handler.c
User/Algorithm/fuzzy_pid.c
User/Algorithm/lowpass_filter.c
User/Algorithm/pid.c
User/Algorithm/sliding_filter.c
User/BLE/bluetooth.c
User/Coil/coil.c
User/Control/control.c
User/Delay/delay.c
User/Encoder/encoder.c
User/I2C/i2c_handler.c
User/IMU/ICM20602.c
User/IMU/imu_utils.c
User/IMU/math_utils.c
User/Key/key.c
User/OLED/oled.c
User/SPI/spi_handler.c
User/TOF/tof.c
User/UART/fifo.c
User/UART/uart_handler.c
User/UART/utils.c
User/UI/ui.c
User/VOFA/vofa.c \
ASM sources
ASM_SOURCES =
startup_stm32f407xx.s
#######################################
binaries
####################################### PREFIX = arm-none-eabi-
The gcc compiler bin path can be either defined in make command via GCC_PATH variable (> make GCC_PATH=xxx)
either it can be added to the PATH environment variable.
ifdef GCC_PATH CC = $(GCC_PATH)/$(PREFIX)gcc AS = $(GCC_PATH)/$(PREFIX)gcc -x assembler-with-cpp CP = $(GCC_PATH)/$(PREFIX)objcopy SZ = $(GCC_PATH)/$(PREFIX)size else CC = $(PREFIX)gcc AS = $(PREFIX)gcc -x assembler-with-cpp CP = $(PREFIX)objcopy SZ = $(PREFIX)size endif HEX = $(CP) -O ihex BIN = $(CP) -O binary -S
#######################################
CFLAGS
#######################################
cpu
CPU = -mcpu=cortex-m4
fpu
FPU = -mfpu=fpv4-sp-d16
float-abi
FLOAT-ABI = -mfloat-abi=hard
mcu
MCU = $(CPU) -mthumb $(FPU) $(FLOAT-ABI)
macros for gcc
AS defines
AS_DEFS =
C defines
C_DEFS =
-DUSE_FULL_LL_DRIVER
-DSTM32F407xx
-DHSE_VALUE=8000000
-DHSE_STARTUP_TIMEOUT=100
-DLSE_STARTUP_TIMEOUT=5000
-DLSE_VALUE=32768
-DEXTERNAL_CLOCK_VALUE=12288000
-DHSI_VALUE=16000000
-DLSI_VALUE=32000
-DVDD_VALUE=3300
-DPREFETCH_ENABLE=1
-DINSTRUCTION_CACHE_ENABLE=1
-DDATA_CACHE_ENABLE=1
-DARM_MATH_CM4
AS includes
AS_INCLUDES =
C includes
C_INCLUDES =
-ICore/Inc
-IDrivers/STM32F4xx_HAL_Driver/Inc
-IDrivers/CMSIS/Device/ST/STM32F4xx/Include
-IDrivers/CMSIS/Include
-IUser/CMSIS-DSP
-IUser/ADC
-IUser/Algorithm
-IUser/BLE
-IUser/Coil
-IUser/Control
-IUser/Delay
-IUser/Encoder
-IUser/I2C
-IUser/IMU
-IUser/Key
-IUser/OLED
-IUser/SPI
-IUser/TOF
-IUser/UART
-IUser/UI
-IUser/VOFA \
compile gcc flags
ASFLAGS = $(MCU) $(AS_DEFS) $(AS_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections
CFLAGS += $(MCU) $(C_DEFS) $(C_INCLUDES) $(OPT) -Wall -fdata-sections -ffunction-sections
ifeq ($(DEBUG), 1) CFLAGS += -g -gdwarf-2 endif
Generate dependency information
CFLAGS += -MMD -MP -MF"$(@:%.o=%.d)"
#######################################
LDFLAGS
#######################################
link script
LDSCRIPT = STM32F407VETx_FLASH.ld
libraries
LIBS = -lc -lm -lnosys -l:libarm_cortexM4lf_math.a LIBDIR = -LUser/CMSIS-DSP LDFLAGS = $(MCU) -specs=nano.specs -T$(LDSCRIPT) $(LIBDIR) $(LIBS) -Wl,-Map=$(BUILD_DIR)/$(TARGET).map,--cref -Wl,--gc-sections
default action: build all
all: $(BUILD_DIR)/$(TARGET).elf $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).bin
#######################################
build the application
#######################################
list of objects
OBJECTS = $(addprefix $(BUILD_DIR)/,$(notdir $(C_SOURCES:.c=.o))) vpath %.c $(sort $(dir $(C_SOURCES)))
list of ASM program objects
OBJECTS += $(addprefix $(BUILD_DIR)/,$(notdir $(ASM_SOURCES:.s=.o))) vpath %.s $(sort $(dir $(ASM_SOURCES)))
$(BUILD_DIR)/%.o: %.c Makefile | $(BUILD_DIR) $(CC) -c $(CFLAGS) -Wa,-a,-ad,-alms=$(BUILD_DIR)/$(notdir $(<:.c=.lst)) $< -o $@
$(BUILD_DIR)/%.o: %.s Makefile | $(BUILD_DIR) $(AS) -c $(CFLAGS) $< -o $@
$(BUILD_DIR)/$(TARGET).elf: $(OBJECTS) Makefile $(CC) $(OBJECTS) $(LDFLAGS) -o $@ $(SZ) $@
$(BUILD_DIR)/%.hex: $(BUILD_DIR)/%.elf | $(BUILD_DIR) $(HEX) $< $@
$(BUILD_DIR)/%.bin: $(BUILD_DIR)/%.elf | $(BUILD_DIR) $(BIN) $< $@
$(BUILD_DIR): mkdir $@
#######################################
clean up
####################################### clean: -rm -fR $(BUILD_DIR)
#######################################
dependencies
####################################### -include $(wildcard $(BUILD_DIR)/*.d)
*** EOF ***
实际上这个项目的makefile是使用STM32 For VSCode自动生成的