我的问题看似简单,但我已经失去了几个小时的学习试图找到解决方案.我正在尝试创建一个Makefile,为目录中的每个.c文件构建可执行文件.
我尝试过以下方法:
CC = gcc
SRCS = $(wildcard *.c)
OBJS = $(patsubst %.c,%.o,$(SRCS))
all: $(OBJS)
$(CC) $< -o $@
%.o: %.c
$(CC) $(CPFLAGS) -c $<
Run Code Online (Sandbox Code Playgroud)
但这样它只创建.o文件,而不是任何可执行文件.我需要一个规则,为每个.o文件生成一个可执行文件.类似于以下内容:
gcc src.o -o src
Run Code Online (Sandbox Code Playgroud)
抢劫的答案似乎不适用于我的机器.也许,作为完整的Makefile:
SRCS = $(wildcard *.c)
all: $(SRCS:.c=)
.c:
gcc $(CPFLAGS) $< -o $@
Run Code Online (Sandbox Code Playgroud)
(最后两行是在我的机器上,不必要,因为默认规则是足够的.)
| 归档时间: |
|
| 查看次数: |
2220 次 |
| 最近记录: |