繁体   English   中英

C ++ Makefile 3个文件

[英]C++ Makefile 3 files

我有一个makefile问题。 我知道如何为两个但不是四个不同的文件(包括头文件)创建一个makefile。

有四个文件,main.cpp Dictionary.h Dictionary.cpp和Cinco.h

Cincotest: main.o Cinco.o
    g++ -o p3 main.o Cinco.o

main.o: main.cpp Cinco.h
    g++ -c main.cpp

Dictionary.o: Dictionary.cpp Dictionary.h
    g++ -c .cpp


# clean up
clean:
    rm -f p4 *.o *~

我们是否需要其他文件代码,还是可以在这里获得帮助?

如果您知道答案,并且可以输入完美的新代码;)

在我看来,这是一种相当标准的组织代码的方式.cpp.h头文件。

您拥有的规则就足够了。 除非您的main.cpp也#include-s Dictionary.h头文件,或者您的dictionary.cpp也#include-s Cinco.h ,在这种情况下:

main.o: main.cpp Cinco.h Dictionary.h
    g++ -c main.cpp

Dictionary.o: Dictionary.cpp Cinco.h Dictionary.h
    g++ -c .cpp

一个makefile只是一个依赖列表。 对于每个*.o文件,其依赖项是编译该文件所需的所有源文件。 如果在main.cpp #include Dictionary.h ,那么对Dictionary.h的更改意味着当然需要重新编译main.cpp 因此,您的依赖项规则将指示相同的方式。

由于您使用的是g++ ,因此您也可以使用g++为您编写依赖关系规则。 尝试:

g++ -MM -MF main.deps main.cpp

有关更多信息,请参见gcc的手册页。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM