【问题标题】:Multiple files Makefile compilation [closed]多个文件Makefile编译[关闭]
【发布时间】:2015-04-16 02:29:08
【问题描述】:

如何在 makefile 中编译 2 个 .cpp 文件和 1 个 .h 文件? 我是 makefile 的菜鸟,但我不想一直在命令行中执行此操作(因为我需要添加库和链接器选项等,但我知道该怎么做)。

我已经进行了大量研究,包括手册,但我仍然不明白。

这是我写的makefile:

HEADERS = program.h headers.h

default: program

program.o: program.cpp $(HEADERS)
    g++ -c program.cpp -o program.o

program: program.o
    g++ program.o -o program

clean:
    -rm -f program.o
    -rm -f program

我拥有的 makefile 用于 1 个文件。如何处理 3 个文件(2 个 .cpp、1 个 .h)?

非常感谢

任何帮助。

【问题讨论】:

  • manual开头。
  • @remyabel 别担心 :) 我没那么笨
  • 手册实际上是一个很好的资源。教程可能无处不在。
  • 发布您尝试编写的makefile。描述什么不起作用或您无法弄清楚哪些部分。我们将回答有关具体问题的具体问题,但我们不会只为您编写代码。这不是 SO 的意义所在。
  • 好吧,猫,我们对你的了解只有这个非常基本的问题。只有两种可能性,remyabel 非常友好地选择了更讨人喜欢的一种(但一切都是相对的):您实际上并没有费心阅读手册。因为如果你有:你为什么要问这个非常基本的问题?对此唯一可以想到的答案是更不讨人喜欢的假设。

标签: c++ makefile


【解决方案1】:

感谢anatolyg的解释:

您不需要“编译” h 文件也许这就是让您如此困难的一点。您只需要编译 cpp 文件。头文件包含在 makefile 中只是为了让 make 确定何时重新编译源文件。

多亏了这一点,我发现我只需要制作一个 makefile 来编译 2 个 .cpp 文件,剩下的就由它来处理。

非常感谢anatolyg。谢谢你:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-25
    • 1970-01-01
    • 1970-01-01
    • 2013-04-12
    • 2018-04-23
    • 2011-08-22
    相关资源
    最近更新 更多