C中简单的makefile的问题

Trouble with simple makefile in C

我是 C 的初学者,有一个项目需要包含一个 makefile 来编译我的使用 pthreads 和信号量的单文件程序。我的 makefile 看起来像:

# Makefile for pizza program 
pizza: pizza.o
    gcc -lrt -lpthread -g -o pizza pizza.o

pizza.o: pizza.c
    gcc -lrt -lpthread -g -c pizza.o pizza.c

我不断得到:

make: Nothing to be done for 'Makefile'.

我以前做过几个 makefile,但从未收到过此消息。我在 makefile 中尝试了不同的语义,但只得到了同样的消息。是的,该命令位于目标和依赖行之后。

在 tcsh 上使用 gcc。我已经阅读了关于 SO 的其他 makefile 帖子,但我无法使用任何答案来解决我的问题。

如有任何帮助,我们将不胜感激!

make 的参数是要构建的目标。

您正在 运行ning make Makefile 告诉 make 尝试构建 Makefile 目标。

您的 makefile 中没有这样的目标,make 没有适用于该目标的内置规则并且该文件存在(并且假定是最新的)这就是该消息告诉您的内容.

到 运行 默认目标(默认情况下列出的第一个目标)你可以 运行 make (假设你使用默认名称 Makefile你的 makefile)。

您还可以将 -f 参数用于 make 到 select 备用生成文件名称。

因此 make -f Makefile 在这种情况下(因为 Makefile 是默认的搜索名称)将执行与 make.

相同的操作