【发布时间】:2014-02-03 14:43:17
【问题描述】:
(前言:我对 C/C++ 还很陌生,我真的不知道在本机代码中调试实际上是如何工作的。)
一些消息来源说 gdb 和 lldb 可以调试 any program compiled to machine code。其他人说要使用 gdb 进行调试,您必须在 gcc with the -g flag 中编译。 gcc 本身的文档表明这是可选的,事实上,如果您使用它,它可能会导致调试器出现问题 gdb。 Clang 还有一个-g 标志,文档基本上只是说“生成调试信息”。
那么这些调试器是否仅限于它们自己的工具链(GNU 和 LLVM),或者它们在某种程度上独立于所使用的编译器?
【问题讨论】: