问题描述
当我构建项目时,成功生成了.elf文件,但是缺少.hex和.bin文件。我在互联网上搜索,发现每个人都使用“ OBJCOPY -O二进制test.elf test.bin ”命令,但是当我使用它时,它不会出现任何错误。
这是我的makefile文件:
PREFIX?=arm-none-eabi-
CC=$(PREFIX)gcc
OBJCOPY=$(PREFIX)objcopy
OD=bin
PROJ_NAME=test
SFLAGS= --static -std=c11 -g3 -Os
SFLAGS+= -fno-common -ffunction-sections -fdata-sections
SFLAGS+= -I./
LFLAGS+=-Wl,--start-group -lc -lgcc -lnosys -Wl,--end-group
M7DP_FLAGS= $(SFLAGS) -mcpu=cortex-m7 -mthumb -mfloat-abi=hard -mfpu=fpv5-d16
CFLAGS = -g -O2 -Wall -Tld.stm32.basic
SRCS += main.c
SRCS += stm32h743xx.h
SRCS += startup_stm32h743xx.S
OBJS = $(SRCS:.c=.o)
.PHONY: proj
all: proj
proj: $(PROJ_NAME).elf
$(PROJ_NAME).elf: $(SRCS)
$(CC) $(CFLAGS) $^ -o $@
$(OBJCOPY) -O ihex $(PROJ_NAME).elf $(PROJ_NAME).hex
$(OBJCOPY) -O binary $(PROJ_NAME).elf $(PROJ_NAME).bin
clean:
rm -f *.o $(PROJ_NAME).elf $(PROJ_NAME).hex $(PROJ_NAME).bin
$(V).SILENT:
OS:WSL2上的Ubuntu 20
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)