簡體   English   中英

Makefile產生錯誤但構建良好?

[英]Makefile Produces Errors but Builds Fine?

我正在使用makefile來構建多個程序。 這是代碼:

SRCS = prog1.c prog2.c prog3.c
TARG = all
CC = gcc
OPTS = -O
LIBS = -lm

OBJS = $(SRCS:.c=.o)

all: $(TARG)

$(TARG): $(OBJS)
    $(CC) -o $(TARG) $(OBJS) $(LIBS)

%.o: %.c
    $(CC) $(OPTS) -c $< -o $@

clean:
    rm -f $(OBJS) $(TARG)

這個makefile完美地生成了三個prog.o文件,但是我收到一個令我困惑的錯誤:

Makefile:12: recipe for target 'all' failed

我已經做了大量的搜索,找不到任何與我的特定問題有關的內容,所以我想知道是否有人對這里發生的事情有所了解。 謝謝你!

使用TARG = all ,您有:

all: all

all: $(OBJS)

為你的程序命名別的東西,而不是all

你有all循環依賴取決於all (因為TARG擴展到all )。 依賴關系圖必須是DAG。 更改

TARG = all

TARG = something

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM