gpt4 book ai didi

c - 如何使 `make` 为文件夹中的每个 C 文件创建一个可执行文件?

转载 作者:太空狗 更新时间:2023-10-29 17:03:02 24 4
gpt4 key购买 nike

我的问题看似简单,但我花了几个小时的时间来寻找答案。我正在尝试创建一个 Makefile,为目录中的每个 .c 文件构建一个可执行文件。

我尝试了以下方法:

CC = gcc
SRCS = $(wildcard *.c)
OBJS = $(patsubst %.c,%.o,$(SRCS))

all: $(OBJS)
$(CC) $< -o $@

%.o: %.c
$(CC) $(CPFLAGS) -c $<

但是这样它只创建.o 文件,而不是任何可执行文件。我需要一个规则来为每个 .o 文件创建一个可执行文件。类似于以下内容:

gcc src.o -o src

最佳答案

rob's答案似乎在我的机器上不起作用。也许,作为完整的 Makefile:

SRCS = $(wildcard *.c)

all: $(SRCS:.c=)

.c:
gcc $(CPFLAGS) $< -o $@

(最后两行,在我的机器上,不需要,因为默认规则就足够了。)

关于c - 如何使 `make` 为文件夹中的每个 C 文件创建一个可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9995321/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com