【发布时间】:2011-08-01 13:36:20
【问题描述】:
简短而简单的问题,但我似乎在这里遇到了作家的障碍:
假设我有一个源代码文件与我用来构建程序的 makefile 位于同一目录中:
confus@confusion:~/prog$ ls
binaries includes main.c Makefile
如何将我的main.c 的二进制文件放在binaries 目录中?然后在第二次运行时,make 应该会像平常一样查看那里的二进制文件是否是最新的(并且不要再次编译)。
我的想法是这样的:
# Makefile
.PHONY: all
SOURCES := $(wildcard *.c)
TARGETS := $(subst %.c,binaries/%.o,$(SOURCES))
all:$(TARGETS)
$(TARGETS):$(SOURCES)
./compile "$(subst .o,.c,$(@F))" -o "$@"
【问题讨论】:
标签: directory makefile gnu-make