0

我拥有的文件是main.cpp,zipType.cppzipType.h我需要创建 hmwk.exe。

这就是我所拥有的:

    CC=g++
    CFLAGS=-g -Wall
    SOURCE=main
    SOURCE2=zipType     

    hmwk.exe : $(SOURCE).o $(SOURCE2).o
             $(CC)  $(CFLAGS) -o hmwk.exe $(SOURCE).o $(SOURCE2).o 

    $(SOURCE).o : $(SOURCE).cpp $(SOURCE2).h
             $(CC) $(CFLAGS) -c $(SOURCE).cpp 

    $(SOURCE2).o : $(SOURCE2).h $(SOURCE2).cpp

    clean:
             rm *.o

我不需要它奢侈,我只需要它工作。这是我得到的输出:

    $ make
    make: Circular zipType <- zipType dependency dropped.
    make: *** No rule to make target `.h', needed by `zipType'.  Stop.

谢谢你的帮助!我真的不喜欢makefile 大声笑。

4

1 回答 1

0
CC=g++
CFLAGS=-g -Wall
SOURCE=main
SOURCE2=zipType     

hmwk.exe : $(SOURCE).o $(SOURCE2).o
         $(CC)  $(CFLAGS) -o hmwk.exe $(SOURCE).o $(SOURCE2).o 

$(SOURCE).o : $(SOURCE).cpp $(SOURCE2).h
         $(CC) $(CFLAGS) -c $(SOURCE).cpp 

$(SOURCE2).o : $(SOURCE2).h $(SOURCE2).cpp
         $(CC) $(CFLAGS) -c $(SOURCE2).cpp 

clean:
         rm *.o

但是,我认为简单的方法就是:

CC=g++
CFLAGS=-g -Wall
SOURCE=main
SOURCE2=zipType     

hmwk.exe : $(SOURCE).cpp $(SOURCE2).cpp
         $(CC)  $(CFLAGS) -o $@ $^ 
于 2013-11-14T05:50:31.713 回答