C项目有两个例子,似乎只有一个编译,makefile问题

时间:2013-01-31 06:26:27

标签: c makefile

我正在开发一个开源C项目,该项目有两个运行库的示例文件,一个名为example.c,另一个名为test.c。

Makefile包含以下内容:

test:       test.c src/term.c
            $(CC) $^ -o $@

example:    example.c src/term.c
            $(CC) -std=c99 $^ -o $@

.PHONY:     test example

然而,当我运行make然后执行./test时,测试运行,但是当我执行./example时,它没有。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

当您输入make时,第一个目标正在执行,在您的情况下是其测试。因此,您只能获得test个可执行文件。但是,如果您键入make example,则会执行example目标,您将获得example二进制文件。我认为你需要重新制作Makefile规则。你可以参考this获取基本概念或this以便深入理解