1

我正在尝试学习如何在带有 C 的 Ubuntu 中使用 makefile(您可能猜到我是初学者)。在“A Book on C”中有一个关于这个主题的章节,他们给出了 3 个文件的简单示例:main.c、sum.c、sum.h(无代码)和一个包含以下代码的 makefile:

sum: main.o sum.o
    gcc –o sum main.o sum.o
main.o: main.c sum.h
    gcc –c main.c 
sum.o: sum.c sum.h
    gcc –c sum.c 

现在,我正在尝试在 Eclipse 中编译此代码,但它不起作用。我用上面的代码和前面提到的 3 个文件创建了一个名为 makefile 的文件。这是我得到的错误:

make all 
make: *** No rule to make target `all'.  Stop.

我将不胜感激任何帮助。谢谢

4

1 回答 1

7

运行“make all”,意味着您正在尝试构建一个名为“all”的目标,但您还没有定义一个目标。

您需要在第一行添加:

all: sum

顺便说一句,如果您运行“make”(不带参数),它将构建第一个目标(如果没有“all”目标)。这就是为什么我建议您将“全部”目标作为第一个目标。

于 2013-03-23T17:50:11.950 回答