2014-10-29 53 views
0

当运行GDB时,调试器会打印它所在的当前行,以指示其当前位置。如何让LLDB打印当前行

鉴于我在小牛队,GDB似乎不是一种选择,因此我不得不使用LLDB。我的问题是:我如何从LLDB获得类似的行为?

目前它所做的仅仅是打印7行左右的代码,并且箭头指向当前行,而不是仅仅打印它所在的行,这看起来很杂乱。 LLDB也似乎忽略printf

产生的所有输出有没有办法实现使用LLDB相同或相似的结果?

+0

我用'定期lldb',虽然它有一些“怪癖”(如提示出来一些其他的输出前 - 但只是偶尔)。这当然显示我在代码中,我通过显示5行代码和一个箭头,我在该行。 – 2014-10-29 09:09:00

回答

2

我不认为你问的问题正是你想要的。我假定你的意思是“如何让LLDB只打印当前行”,因为如你所述,它总是打印当前行以及一些上下文。

总之,如何当你停止由两个设置控制源的多条线路得到印刷:

stop-line-count-after -- The number of sources lines to display that come after the current source line when displaying a stopped context. 
    stop-line-count-before -- The number of sources lines to display that come before the current source line when displaying a stopped context. 

其实这些都不是完全正确的,因为既没有源代码行设置为0节目,但设置“之后”到1显示两条停止线。有人显然希望能够显示无源代码行,但不想添加额外的设置。

无论如何,你不能只是一条线,但你可以得到它到两个。