我在make编译的时候一个汇编文件boot.S报错,如下图所示,但是当我单独使用gcc命令编译却一切正常(同样的参数),请问这是怎么回事?如何解决?
makefile如下:
toolchain := riscv64-unknown-elf-
GCC := $(toolchain)gcc
AS := $(toolchain)as
LD := $(toolchain)ld
OBJCOPY :=$(toolchain)objcopy
COPS := -g -O0 -Wall -nostdlib -nostdinc -Iinclude -mcmodel=medany -fno-PIE -fomit-frame-pointer -Wno-builtin-declaration-mismatch -ggdb -g
all: system
$(OBJCOPY) -O binary system kernel.bin
system: ./kernel/main.o ./kernel/boot.o ./kernel/urat.o
$(LD) -z muldefs -T ./kernel/linker.ld -o system ./kernel/main.o ./kernel/boot.o ./kernel/urat.o
main.o: ./kernel/main.c
$(GCC) $(COPS) -c ./kernel/main.c
boot.o: ./kernel/boot.S
$(GCC) $(COPS) -c ./kernel/boot.S
urat.o: ./kernel/urat.c
$(GCC) $(COPS) -c ./kernel/urat.c
clean:
rm -rf ./kernel/*.o
rm -rf system kernel.bin