我的 Makefile 有问题。无此文件或目录
Issue with my Makefile. No such file or directory
我正在尝试使用 Make 构建 MIPS 程序。我有两个非常简单的文件,因为我想让 Makefile 在继续功能之前工作:
logic.asm
# contains a main method
# contains a .globl to print_strings
# calls print_strings
printer.asm
# has a print_strings method that just prints a few strings and returns
我的 Makefile 如下所示:
RASM = /home/bin/rasm
RLINK = /home/bin/rlink
# Suffixes
.SUFFIXES: .asm .obj .lst .out
# Obj files
OBJS = logic.obj printer.obj
# ASM -> OBJ
.asm.obj:
$(RASM) -l $*.asm > $*.lst
# OBJ -> OUT
.obj.out:
$(RLINK) -m -o $*.out $*.obj > $*.map
# target
logic.out: $(OBJS)
$(RLINK) -m -o $*.out $*.out $(OBJS) > $*.map
当我 运行 制作时,这是我看到的:
$ make
/home/bin/rlink -m -o logic.out logic.out logic.obj printer.obj > logic.map
logic.out: No such file or directory
make: *** [logic.out] Error 1
问题出在这一行:
$(RLINK) -m -o $*.out $*.out $(OBJS) > $*.map
应该只有 1 个 $*.out,像这样:
$(RLINK) -m -o $*.out $(OBJS) > $*.map
我正在尝试使用 Make 构建 MIPS 程序。我有两个非常简单的文件,因为我想让 Makefile 在继续功能之前工作:
logic.asm
# contains a main method
# contains a .globl to print_strings
# calls print_strings
printer.asm
# has a print_strings method that just prints a few strings and returns
我的 Makefile 如下所示:
RASM = /home/bin/rasm
RLINK = /home/bin/rlink
# Suffixes
.SUFFIXES: .asm .obj .lst .out
# Obj files
OBJS = logic.obj printer.obj
# ASM -> OBJ
.asm.obj:
$(RASM) -l $*.asm > $*.lst
# OBJ -> OUT
.obj.out:
$(RLINK) -m -o $*.out $*.obj > $*.map
# target
logic.out: $(OBJS)
$(RLINK) -m -o $*.out $*.out $(OBJS) > $*.map
当我 运行 制作时,这是我看到的:
$ make
/home/bin/rlink -m -o logic.out logic.out logic.obj printer.obj > logic.map
logic.out: No such file or directory
make: *** [logic.out] Error 1
问题出在这一行:
$(RLINK) -m -o $*.out $*.out $(OBJS) > $*.map
应该只有 1 个 $*.out,像这样:
$(RLINK) -m -o $*.out $(OBJS) > $*.map