【发布时间】:2018-01-03 00:36:50
【问题描述】:
我正在查看一个 makefile,我知道 -o,-c 的作用,但 -g 的作用和含义。
【问题讨论】:
-
你说的是 GCC 吗?
-
为什么要使用 C 来创建 makefile?
标签: makefile
我正在查看一个 makefile,我知道 -o,-c 的作用,但 -g 的作用和含义。
【问题讨论】:
标签: makefile
这与制造无关。您应该查看编译器的文档。例如,GCC 的选项是summarized here。如果你在那里搜索,你会发现-g 是一个调试选项described here。
如果您使用不同的编译器,您应该查看该编译器的文档(但是,绝大多数 C 编译器使用相同的基本选项,因此您的可能相同)。
【讨论】:
【讨论】:
-g 强制 gcc 将调试信息添加到已编译的代码中,这使您可以更轻松地使用 gdb 对其进行调试。
除非您或使用您的代码的其他人将使用 gdb,否则没有理由包含该标志。
来自 gcc 手册页:
在大多数使用 stabs 格式的系统上,-g 允许使用只有 GDB 才能使用的额外调试信息;这些额外的信息使 GDB 中的调试工作更好,但可能会使其他调试器崩溃或拒绝读取程序。
【讨论】: