使用make创建.o文件

时间:2017-05-06 19:00:13

标签: makefile

我试图学习如何编写makefile。我已经开始阅读gnu make的手册:https://www.gnu.org/software/make/manual/html_node/Simple-Makefile.html#Simple-Makefile

我在同一目录中有3个文件:

  • main.cpp:创建一个矩形并打印一些信息。因此它包括Rectangle.h
  • Rectangle.h:矩形类的头文件
  • Rectangle.cpp:矩形类的实现

我在main.cpp中包含Rectangle.h时遇到了麻烦。我的makefile是:

main: main.o rectangle.o
    g++ -o main.exe main.o rectangle.o

main.o: main.cpp
    g++ main.cpp
rectangle.o: Rectangle.cpp
    g++ Rectangle.cpp
clean:
    rm main.exe main.o rectangle.o

我知道创建main.o时缺少一些东西,但我无法找到它是什么。我尝试添加Rectangle.h / .o / .cpp的各种变体,并在互联网上找到一些东西,但我找不到东西。

非常感谢帮助:)

PS:代码很好,我可以用命令编译它:

g ++ -o main.exe main.cpp Rectangle.cpp

1 个答案:

答案 0 :(得分:3)

man g ++

  

当你调用GCC时,它通常会进行预处理,编译,汇编和链接。 “整体选项”允许您在中间阶段停止此过程。例如,-c选项表示不运行链接器。然后输出包含汇编程序输出的目标文件。