2014-03-06 48 views
0

我正在开发一个类似于GDB的交互和外观应用程序,我想知道GDB目前做了什么。GDB使用什么进行交互?

是否所有GDB做(在外观可用性而言)仅仅是清除屏幕,显示一个提示和之后的光标位置,然后等待用户输入?还有什么我应该注意的吗?

+4

它可能使用[GNU readline库](http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html)。 –

回答

1

如果您使用'布局'命令获取多个窗口,则使用curses进行屏幕管理。见the source。更简单的命令行模式可能完全按照您的描述进行。

2

GDB是开源的,所以它们什么都不隐藏,任何你想知道的东西都可以在网上找到。大多数你想发现的东西都可以从GDB documentation或直接从source得到。

请注意链接到GDB互操作的技术细节。

从文档:

GDB有几个用户界面,其中传统的命令行界面也许是最熟悉的

所以,你可以只用gdb启动它,并得到一个交互模式

VirtualBox的:〜$ GDB
GNU GDB(Ubuntu的/ Linaro的7.4-2012.04-0ub untu2.1)7.4-2012.04
版权所有(C)2012自由软件基金会,公司 许可的GPLv3 +:GNU GPL版本3或更高版本http://gnu.org/licenses/gpl.html
...
(GDB)

或添加计划到它:

VirtualBox的:〜$ GDB
./example
...同样的东西...
(GDB)

因此,就这些正常使用情况而言,它并不清楚屏幕,它只是开始输出数据。但是有很多方法可以使用它和可以通过的论证。你应该运行gdb -help给你一些想法。