超详细的GDB调试指南,gdb调试

【超详细的GDB调试指南,gdb调试】1.-g,产生调试信息,3表示调试级别 。比如3这个级别可以调试宏 。如下为我通过xShell连接Linux系统通过GDB调试正常显示汉字的终端设置示例:终端编码应该设置为GB2312,设置完成后通过GDB调试后用list命令就能正常显示中文 。GDB调试时无法正确显示源代码中的汉字与GDB本身无关,而是由终端的字符编码不正确导致 。
如何让gdb调试时正确显示源代码中的汉字?

超详细的GDB调试指南,gdb调试


GDB调试时无法正确显示源代码中的汉字与GDB本身无关,而是由终端的字符编码不正确导致 。如下为我通过xShell连接Linux系统通过GDB调试正常显示汉字的终端设置示例:终端编码应该设置为GB2312,设置完成后通过GDB调试后用list命令就能正常显示中文 。楼主可以根据自己的Linux系统自行设置终端字符编码,不同的Linux设置不同,楼主可以自行查阅相关命令 。
如何设置gcc的编译选项,使得生成的可执行文件可以更方便地用gdb来调试?
超详细的GDB调试指南,gdb调试


编译程序时设置-g3 -O0编译参数,使其程序不优化以及尽可能多的生成调试信息 。1.-g,产生调试信息,3表示调试级别 。这个级别会产生更多的额外调试信息 。比如3这个级别可以调试宏 。2.-O,规定编译器的优化等级,优化级数越高执行效率一般越好,但是优化会改变原有程序结构,使得其汇编不易理解,使其源代码与汇编对应不上,断点地址与源码对应不上等问题,-O0表示对程序不做任何优化 。

    推荐阅读