无法从.elf文件创建.hex文件

问题描述

当我构建项目时,成功生成了.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 (将#修改为@)