• DDD——让天下没有难调的程序


    https://www.linuxidc.com/Linux/2016-11/137343.htm

    DDD全称Data Display Debugger,当我第一次见到它时,它的界面着实让我吃了一惊,如此的简陋,如此的怪异,我甚至想立刻删了它,但是当我见识到它强大的功能时,我被深深的震撼了,如此的飘逸,如此的不羁,我的脑海中突然想到了一个词来形容它——犀利!

    没错,就是这么犀利,它是gdb的最优图形化前端,它继承了gdb的所有功能,它还加入了数据结构可视化能力,什么一维二维栈数组,二叉三叉N叉树,DDD统统都能用图形显示出来。

    小伙子,你还在为调试犯愁么,你还在为红黑树写了半天就是不对而沮丧么,如果你真的遇到了这样的问题,那么我想DDD一定适合你。

    它含蓄深沉,它隽永内敛,它在百度上搜不到多少资料,它就是这么低调,这么孤寂,它等待着你去发现,去使用,去震撼这个世界,去拿起它的锋芒——傲视群雄!

    DDD安装

    嗯,说了这么多我想你一定累了,下面让我们来看看DDD的安装吧。 DDD可以从官网下载到。

    下载解压我就不说了。在编译前先安装完依赖包,我的系统是CentOS 6.4,使用yum软件包管理器。

    yum install openmotif.i686 ncurses-devel.i686 openmotif-devel.i686 gdb.i686
    

    它当时开发时使用的gcc 3.x,现在大部分系统上都是gcc 4.4,不要告诉我你还在用零一年的机子。正因为这个缘故,必须修改一个地方才能编译成功,这也是官方推荐的修改方式。

    编辑ddd/strclass.C文件,在头文件声明里加入#include <cstdio>
    

    之后就很好办了,

    ./configure
    make
    sudo make install
    

    安装完,运行命令ddd就可以打开了。

    更改DDD字体

    刚打开DDD界面你也许会这么想,这字体这么小,看来我需要把眼睛升级为钛合金的。

    下面教大家设置DDD字体。DDD似乎无法识别/usr/share/fonts/内的各种系统字体,只能手动调节了。

    yum install xorg-x11-apps-7.7-6.el6 xorg-x11-fonts-misc
    

    这两个包必须安装,缺少前面的会导致DDD无法改变字体和大小,因为这个软件包里面有个工具叫xfontsel,这是DDD调节字体所必须的。缺少后面的就会导致DDD字体大小可调范围很小,因为只有两种大小让你选。

    打开DDD字体选择页面,Edit => Preferences => Fonts,点一下Browse就会弹出xfontsel菜单,选择字体时fmly选fixed字体,ptSz开到230,只要更改这两项就可以了。你可以把Default Font、Variable Font之类的全改成这样的字体。然后重启DDD,世界瞬间变化了,字体够不够大?再将DDD全屏,怎么样,是不是从没有感觉到调试程序也是如此的痛快。

    使用

    DDD内嵌gdb,你可以在窗口下方使用gdb的所有功能。在窗口上方是数据结构可视化窗口。看下面俩图。 Initial DDD Window Date Window 在变量上点右键都是功能菜单,Display一下就能把变量显示到数据显示区域了。要是对二维数组Display的话,整个数组就呈现一个矩阵显示出来,还能将数组转置显示,对二叉树Display的话会把当前节点显示出来,再在节点上Display就能把下一个节点显示出来,二叉树结点可以这样一个个的显示出来,不用再在纸上画了。犀利!太犀利了!

    上几张图你们感受一下。(DDD至强之图放在最后一节) Creating Single Displays Selecting Displays Showing and Hiding Details Rotating Displays Displaying Local Variables Clustering Displays Editing all Displays Shared Structures Automatic Layout Printing the Graph

    你以为这就完了?

    DDD实力证明它是宇宙最强调试器。看图! Changing the Plot Appearance

    结语

    DDD——让天下没有难调的程序

    犀利!

  • 相关阅读:
    Symantec Backup Exec Remote Agent 2010在Redhat Enterprise 6.6上启动问题
    RMAN冷备份异机还原
    ORACLE OLAP错误ORA-06512: at "SYS.OLAPIHISTORYRETENTION"
    expdp 报The value (30) of MAXTRANS parameter ignored错误的原因诊断
    ORA-01157 & ORA-01110
    INITIAL参数设置导致TRUNCATE TABLE不能降低高水位线案例
    ORA-19563: header validation failed for file
    ORACLE NUMBER类型Scale为0引发的问题
    ORA-04063: view "SYS.DBA_REGISTRY" has errors
    Linux 格式化扩展分区(Extended)
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/10347692.html
Copyright © 2020-2023  润新知