独立 lldb 是不是有“TUI”模式?

Posted

技术标签:

【中文标题】独立 lldb 是不是有“TUI”模式?【英文标题】:Is there a "TUI" mode for standalone lldb?独立 lldb 是否有“TUI”模式? 【发布时间】:2013-11-18 04:07:48 【问题描述】:

由于这些天在 Mac 上使用 gdb 变得越来越繁重(至少我觉得我在与 Apple 作斗争),所以我开始使用 lldb。

是否有与gdb -tui 等效的模式,可以在从命令行独立运行 lldb 时显示源代码的良好、持久的视图以及您在其中的位置?显然,在 Xcode 中有这样的显示,但我最终将大部分代码部署到 Linux 机器上,并且更愿意在两个平台上使用相同的开发环境(即 vim、Makefiles、autotools 等)。

【问题讨论】:

【参考方案1】:

在树 svn source lldb 的顶部有一个 非常 由 Greg Clayton 添加的新命令行 GUI 模式。源代码、局部变量、堆栈、线程、寄存器等的单独窗口非常整洁。还没有控制台窗口。它太酷了。如果您想查看它,请参阅http://lldb.llvm.org/build.html 了解如何从源代码构建 lldb。要进入 GUI 模式,只需在调试时从 lldb 命令行输入gui

更新:此 gui 功能包含在 Xcode 6 及更高版本中附带的 lldb 中。这是一个夜间和周末的副项目,目前没有看到很多活跃的开发,但请尝试一下。

【讨论】:

谢谢你的提示,我去看看。 你能指定哪个版本的 LLDB 有这个 gui 功能吗? Greg 的类 TUI 模式包含在 2014 年秋季发布的 Xcode 6 中。它是 Greg 的业余时间有趣的项目——它不像命令行调试器的其他部分那样完善——但是它工作得很好。 gui模式是神送。谢谢!【参考方案2】:

很遗憾,没有。

但是,我确实遇到了这个: https://github.com/snarez/voltron

如果你熟悉 screen/tmux,它会很好用。

【讨论】:

哇,这看起来也很酷,很抱歉我在你发的时候错过了这篇文章。 迄今为止最好的 lldb GUI atm【参考方案3】:

在您处于有趣的断点后,在 lldb 的提示符中键入 gui。它有一个第一次打开的小教程和内置帮助。

【讨论】:

【参考方案4】:

free GUI facade from Affinic 给我带来了好运。它并不完美(或者,至少,我对它的理解并不完美)。我必须偶尔重新启动它,有时它会与特别粗糙/花哨的 C++ 代码不同步,例如,在构造函数中执行大量隐式操作的代码。但总的来说,它为我节省了很多时间,而不是命令行中的老式方式。

我无法让 LLDB CLI 中的 ncurses GUI 模式工作,我也没有尝试过 Voltron。

【讨论】:

Necropost:用于 GDB/LLDB 的 Affinic Debugger 有“lite”和“pro”版本。 “精简版”是免费的,但它有(IMO)严格的限制。

以上是关于独立 lldb 是不是有“TUI”模式?的主要内容,如果未能解决你的问题,请参考以下文章

设计模式--策略模式

有没有人在嵌入模式下使用Jersey(不是servlet env而是独立的Grizzly实例)成功使用模板引擎?

怎么判断电脑是不是有独立显卡?

Jetty入门(1-2)配置Jetty - 独立运行模式

mongoose 的“有独立工作收入的员工”模式设计的问题

桥接模式