makefile
来自「GCC arm startup example2 for LPC series」· 代码 · 共 101 行
TXT
101 行
# -----------------------------------------------------------------
# Makefile for ex9
# -----------------------------------------------------------------
CC = arm-elf-gcc
CFLAGS = -Wall -O2 -mcpu=arm7tdmi -I./ -I../common
# Override the default linker script .text section start address
LDFLAGS = -T../lpc2138_flash.ld -nostartfiles
all: ex9a.hex ex9b.hex ex9c.hex
# -----------------------------------------------------------------
# LED control
# -----------------------------------------------------------------
led.o: ../common/led.h ../common/led.c
$(CC) $(CFLAGS) $(LDFLAGS) -c ../common/led.c
# -----------------------------------------------------------------
# Example 9a
# -----------------------------------------------------------------
ex9a.elf: ex9_start.s ex9a_main.c led.o
$(CC) $(CFLAGS) $(LDFLAGS) \
ex9_start.s ex9a_main.c led.o -o ex9a.elf
ex9a.hex: ex9a.elf
arm-elf-objcopy -O ihex ex9a.elf ex9a.hex
# Use 'make ex9a.size' to see the section sizes
ex9a.size: ex9a.elf
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo "Object section sizes:"
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-size ex9a.elf
@echo ""
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-objdump -h ex9a.elf
# -----------------------------------------------------------------
# Example 9b
# -----------------------------------------------------------------
ex9b.elf: ex9_start.s ex9b_main.c led.o
$(CC) $(CFLAGS) $(LDFLAGS) \
ex9_start.s ex9b_main.c led.o -o ex9b.elf
ex9b.hex: ex9b.elf
arm-elf-objcopy -O ihex ex9b.elf ex9b.hex
# Use 'make ex9b.size' to see the section sizes
ex9b.size: ex9b.elf
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo "Object section sizes:"
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-size ex9b.elf
@echo ""
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-objdump -h ex9b.elf
# -----------------------------------------------------------------
# Example 9c
# -----------------------------------------------------------------
ex9c.elf: ex9c_start.s ex9c_main.c led.o
$(CC) $(CFLAGS) $(LDFLAGS) \
ex9c_start.s ex9c_main.c led.o -o ex9c.elf
ex9c.hex: ex9c.elf
arm-elf-objcopy -O ihex ex9c.elf ex9c.hex
# Use 'make ex9c.size' to see the section sizes
ex9c.size: ex9c.elf
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo "Object section sizes:"
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-size ex9c.elf
@echo ""
@echo -n "-------------------------------"
@echo "-------------------------------"
@echo ""
arm-elf-objdump -h ex9c.elf
clean:
-rm -rf *.o *.elf *.hex
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?