在创建makefile时,如何创建调试目标以及正常构建程序的默认目标?

时间:2014-09-28 17:51:53

标签: c makefile gdb

我正在编写makefile来构建我的程序。

我想知道调试命令。

我已经编写了makefile用于编译和清理

all: perfect.c
    gcc -g -o perfect perfect.c
clean:
    rm -f perfect

你能帮我写一些调试吗?什么是默认目标?

1 个答案:

答案 0 :(得分:0)

在您继续学习有关make文件的基础知识之前。您可以从this link

开始
Can you help me in writing for debug?

您的make文件已经编写用于调试(使用-g编译器标志)

 what does it mean default target?

默认目标是您的第一个目标。在您的情况下(以及大多数情况),如果您只是调用all那么make就是必须执行的规则。如果要清除,则必须提供make clean,但对于taget all,您可以拨打make allmake。由于all是第一个默认执行的目标。如果您在开头写clean,则clean将成为默认目标。

允许重写makefile以进行正常构建和调试构建。

all: perfect.c
     gcc -o perfect perfect.c
debug: perfect.c
      gcc -g -o perfect-debug perfect.c
clean:
      rm -rf perfect perfect-debug

因此,如果您运行make all或仅make perfect.c将在没有调试选项的情况下构建。如果您运行make debug,则perfect.c将使用调试选项构建。