课程目标学习使用字符界面gdb来调试Linux程序gdb高级应用图形gdb界面-ddd1Gdb简介GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。GDB相对图形界面的VC++等,命令比较难记,这是命令行界面一大缺点Linux也有基于GDB图形界面的调试器,如gdbinsight,,可以按照你的自定义的要求随心所欲的运行程序。可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)当程序被停住时,可以检查此时你的程序中所发生的事。动态的改变你程序的执行环境3GDB与VC++调试命令的对比4GDB帮助象大多部复杂Linux程序一样,GDB是通过内部命令来完成调试工作gdb的命令很多,,如果要看种类中的命令,可以使用help<class>命令,如:helpbreakpoints,查看设置断点的所有命令。mand>来查看命令的帮助。gdb中,输入命令时,可以不用打全命令,只用打命令的前几个字符就可以了,当然,命令的前几个字符应该要标志着一个唯一的命令在gdb下,你可以敲击两次TAB键来补齐命令的全称,如果有重复的,那么gdb会把其例出来。56GDB测试样例编译测试程序,一定要加上-g参数,--otst启动GDB的方式gdb<program>program也就是你的执行文件,一般在当前目录下gdb<program>core用gdb同时调试一个运行程序和core文件,core是程序非法执行后coredump后产生的文件gdb<program><PID>如果你的程序是一个服务程序,那么你可以指定这个服务程序运行时的进程ID。gdb会自动attach上去,并调试他。program应该在PATH环境变量中搜索得到。操作GDB常见命令7GDB的启动选项GDB启动时,可以加上一些GDB的启动选项--symbols<file>-s<file> 从指定文件中读取符号表。-sefile 从指定文件中读取符号表信息,并把他用在可执行文件中。--core<file> -c<file> 调试时coredump的core文件。--directory<directory> -d<directory> 加入一个源文件的搜索路径。默认搜索路径是环境变量中PATH所定义的路径。fileprogram详细的开关可以用gdb--help8gdb的基本调试调试器的基本功能任何一种调试器,都必须具备如下基本功能建立可执行程序与源码的联系(查看源码)设置断点执行行基本的调试命令程序暂停后,查看各种信息10
gdb调试程序教程(教学ppt) 来自淘豆网m.daumloan.com转载请标明出处.