gpt4 book ai didi

c - 在 makefile 中批量构建源代码

转载 作者:行者123 更新时间:2023-11-30 15:28:53 25 4
gpt4 key购买 nike

我有大量小型 C 程序(都是单个 .c 文件),我想将它们全部构建成单独的可执行文件。也就是说,prog-01.cprog-02.c 等应该单独构建,并且结果应该是该程序的单独可执行文件。

我对在 makefile 中使用通配符还比较陌生,希望得到一些帮助。这是我到目前为止所做的:

CC = gcc
CFLAGS = -g -Wall -Werror

SRCS:=$(wildcard *.c)
OBJS:=$(SRC:.c=.bin)

all-gcc: $(SRCS)
$(CC) $(CFLAGS) $(SRCS) -o $(OBJS)

run-%-gcc: prog-%-gcc
@./$(<)

prog-%-gcc: prog-%.c
$(CC) $(CFLAGS) $< -o $@

clean:
@rm *.o

最佳答案

如果我走这条路,我可能会使用:

CC     = gcc
CFLAGS = -g -Wall -Werror

SRCS := $(wildcard *.c)
PROGS := $(SRCS:.c=)
OBJS := $(SRCS:.c=.o)

all: $(PROGS)

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

这会将每个文件 program.c 转换为可执行的 program,使用默认规则从 C 源文件构建程序。

关于c - 在 makefile 中批量构建源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26415370/

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