在Cygwin上的Makefile

5
我将在Windows 7 x64上使用Cygwin来使用makefile。我键入“make”并收到以下错误消息:

make: * 没有指定目标和找不到makefile。停止。

Makefile:
 CC = g++
 CFLAGS = -g -Wall -pedantic
 HDRS = node.h stack.h
 SRCS = stack.cpp main.cpp
 OBJS = $(patsubst %.cpp, %.o, $(SRCS))

 proj3:$(OBJS)
   $(CC) $(CFLAGS) -o $@ $(OBJS)
 %.o: %.cpp $(HDRS)
   $(CC)    $(CFLAGS) -c $<
 .PHONY:clean
  clean:
-rm -f *.o *~ *core* proj3 

所有文件均未丢失。


4
在终端中输入 ls 命令,确保列出了 Makefile 文件。 - Blender
2
你这里极不一致的格式让我觉得你的 Makefile 格式也是错误的。确保每个配方行以一个制表符开始,而所有其他行则不以制表符开始。(我不认为这会导致你报告的错误,但它肯定也不会让你的程序愉快地运行。) - sarnold
2
这是我第一次在这里发布代码,所以我没有像Makefile中那样缩进代码。但是这个Makefile在Linux Fedora Red Hat上运行良好。 - max
2个回答

8
问题已解决: 我在我的目录中有一个名为Makefile.mak的makefile文件。 我在Cygwin中键入:

make -f Makefile.mak


1

输入"make proj3"以成功运行make命令。


1
如果没有指定目标,则make将构建在makefile中找到的第一个目标。我认为你的答案行不通。 - Keith Layne

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接