我正在编写 makefile 来构建我的程序。
我想知道调试命令。
我已经编写了用于编译和清理的 makefile
all: perfect.c
gcc -g -o perfect perfect.c
clean:
rm -f perfect
你能帮我写调试吗?默认目标是什么意思?
最佳答案
在继续学习 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 all
或仅调用 make
。由于 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
将使用调试选项构建。
关于c - 在创建 makefile 时,如何创建调试目标以及正常构建程序的默认目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26087793/