1

私は unix のようなカーネル開発チュートリアルに取り組んでいますが、完全な初心者の問題に遭遇したと確信しています。これの何が問題なのか誰か教えてもらえますか?

SOURCES=boot.o main.o

CFLAGS=-nostdlib -nostdinc -fno-builtin -fno-stack-protector
LDFLAGS=-Tlink.ld
ASFLAGS=-felf

all: $(SOURCES) link 

clean:
    -rm *.o kernel

link:
    ld $(LDFLAGS) -o kernel $(SOURCES)

.s.o:
    yasm $(ASFLAGS) $

前もって感謝します

4

2 に答える 2

0

昔ながらのサフィックスルールを使用していて、そのためのセットアップが欠落しています(さらに最後の行にエラーがあります)。

代わりに通常のパターンルールに切り替えてください。古いスタイルのルールを修正しようとしても意味がありません。

%.o: %.s
    yasm $(ASFLAGS) $<
于 2012-12-05T16:47:30.980 に答える
0

Well assuming boot.o and main.o are built using yasm your makefile lack a rule for .o

.o:
    yasm $(ASFLAGS) $
于 2012-12-05T16:40:25.267 に答える