【问题标题】:lldb on Mac Qt C++Mac Qt C++ 上的 lldb
【发布时间】:2016-03-14 23:12:55
【问题描述】:

我正在尝试使用 LLDB 来调试 Qt C++ 程序。我以前从未使用过 LLDB。我遇到的第一个问题是它没有显示我正在使用的 C++ 代码 - 仅显示与 BP 和汇编代码的偏移量,例如:

(lldb) n
Process 29690 stopped
* thread #1: tid = 0x270041, 0x0000000100066cfe foo`workItem::packageDataAndTransitionToReport() + 30, queue = 'com.apple.main-thread', stop reason = instruction step over
    frame #0: 0x0000000100066cfe foo`workItem::packageDataAndTransitionToReport() + 30
foo`workItem::packageDataAndTransitionToReport() + 30:
-> 0x100066cfe:  movq   %rcx, -0x48(%rbp)
   0x100066d02:  movq   -0x40(%rbp), %rdx
   0x100066d06:  movq   %rdx, -0x30(%rbp)
   0x100066d0a:  movq   %rcx, -0x38(%rbp)

如何让它显示它停止的 C++ 行而不是汇编代码?

第二个问题是,我如何列出源代码。 gdb 中熟悉的 l 命令不起作用,它不会产生任何输出。

【问题讨论】:

  • 你是用-g编译的吗?使用此表查找等效的 lldb 命令lldb.llvm.org/lldb-gdb.html
  • 谢谢。就是这样。
  • 哦,太好了,我会把它作为答案。请采纳

标签: c++ macos qt lldb


【解决方案1】:

编译时使用-g标志。

使用此链接查找对应的lldb命令http://lldb.llvm.org/lldb-gdb.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-13
    • 2019-05-05
    • 2014-12-06
    • 2018-02-11
    • 1970-01-01
    • 2011-11-26
    • 1970-01-01
    • 2011-10-14
    相关资源
    最近更新 更多