0
我有两个不同的程序使用通用头文件。两者都完全依靠自己的工作。我想要做的就是能够用一个makefile编译,这样如果我想运行一个文件,我必须输入./progone.out而不是./a.out,而输入另一个c文件。 /progtwo.out。我没有做大量的makefile工作,所以我想知道是否有办法做到这一点。我一直在检查一堆教程,而他们都没有解释如何做到这一点。使用不同的可执行文件创建Makefile
我有两个不同的程序使用通用头文件。两者都完全依靠自己的工作。我想要做的就是能够用一个makefile编译,这样如果我想运行一个文件,我必须输入./progone.out而不是./a.out,而输入另一个c文件。 /progtwo.out。我没有做大量的makefile工作,所以我想知道是否有办法做到这一点。我一直在检查一堆教程,而他们都没有解释如何做到这一点。使用不同的可执行文件创建Makefile
# this will have the make to compile both executables when invoked as "make" or "make all"
.PHONY all
all: progone.out progtwo.out
# these defines how each programs will be built
progone.out: progone.c commonheader.h
gcc -o progone.out progone.c
progtwo.out: progtwo.c commonheader.h
gcc -o progtwo.out progtwo.c
您也可以概括的规则来构建这样的每个程序,如果它们是相同的:
%.out: %.c commonheader.h
gcc -o [email protected] $<
[email protected]
将成为目标的名称(%.out
这里)和$<
会名称的第一个依赖项(这里是%.c
)。