在Makefile中的单独文件夹中声明源文件

在Makefile中的单独文件夹中声明源文件,makefile,Makefile,我的makefile包含以下部分: SRCS = src/main.c src/sdlshape.c src/sdlevent.c OBJS = bin/main.o bin/sdlshape.o bin/sdlevent.o 有没有一种方法可以用一个单独的变量来替换这些变量中的src/和bin/文件夹?我不确定您到底在寻找什么,但也许您可以这样做 SRC = src SRCS = $(SRC)/main.c $(SRC)/sdlshape.c $(SRC)/sdlevent

我的makefile包含以下部分:

SRCS   = src/main.c src/sdlshape.c src/sdlevent.c
OBJS   = bin/main.o bin/sdlshape.o bin/sdlevent.o

有没有一种方法可以用一个单独的变量来替换这些变量中的
src/
bin/
文件夹?

我不确定您到底在寻找什么,但也许您可以这样做

SRC    = src
SRCS   = $(SRC)/main.c $(SRC)/sdlshape.c $(SRC)/sdlevent.c
另一种方法是使用
$(通配符…

如果您正在查找
Makefile
的示例,其中包含不同的包含、对象等文件夹,请查看以下内容:

我知道它是基于Fortran的,但是你仍然可以感觉到如何构造它。

和/或
OBJS:=$(patsubst src/%.c,bin/%.o,$(SRCS))
使用
$(通配符…
的方法更适合我的场景,但根据我的问题,第一种方法[更]正确。非常感谢。谢谢你的帮助。