我想要建立一个 Makefile 来自动汇编和链接我的汇编程序。
现在我在单个文件中有不同的汇编程序源,如prog1.asm、prog2.asm、hello.asm等。
我想要运行
as -o prog1.o prog1.asm
ld prog1.o prog1
对于每一个来源。
我设置了一个 Makefile 但是它不能正常工作。
.PHONY : all
.PHONY : clean
SOURCES = $(wildcard *.asm)
OBJECTS = $(SOURCES:.asm=.o)
TARGETS = $(SOURCES:.asm=)
%.o: %.asm
as -o $@ $<
all: $(TARGETS)
$(TARGETS): $(OBJECTS)
ld $< -o $@
clean:
rm *.o
实际上,make 应该将目录中的所有 asm 文件链接到可执行文件。就是这样。