嵌入式Linux调试.ppt
文本预览下载声明
武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb启动界面 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb基本命令 file quit run info list break watch print set step next continue file [filename]?装入想要调试的可执行文件 break [file:]function?在(file文件的)function函数中设置一个断点 clear?除一个断点,这个命令需要指定代码行或者函数名作为参数 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb基本命令 ?????? run [arglist]????????????? 运行程序 (如果指定了arglist,则将arglist作为参数运行程序) ?????? bt?Backtrace: 显示程序堆栈信息 ?????? print expr????????????? 打印表达式的值 ?????? continue????????????? 继续运行您的程序 (在停止之后,比如在一个断点之后 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb基本命令 ?????? list??列出产生执行文件的源代码的一部分 ?????? next??单步执行 (在停止之后); 跳过函数调用 ?????? nexti??执行下一行的源代码中的一条汇编指令 ?????? set??设置变量的值。例如:set nval=54 将把54保存到nval变量中 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb基本命令 ?????? step?单步执行 (在停止之后); 进入函数调用 ?????? stepi?继续执行程序下一行源代码中的汇编指令。如果是函数调用,这个命令将进入函数的内部,单步执行函数中的汇编代码 ?????? watch?使你能监视一个变量的值而不管它何时被改变 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb基本命令 display?在断点的停止的地方,显示指定的表达式的值。(显示变量) ?undisplay?删除一个display设置的变量显示。这个命令需要将display list中的索引做参数 quit?退出gdb. 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb基本命令 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb远程调试模型 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. gdb远程调试环境模型图 武汉恒亿电子科技发展有限公司 Wuhan HiEasy Electronic Technology Development Co., Ltd. 建立gdb和gdbserver 之间的连接 在目标板上运行gdbserver [root@vm/root]# ./gdbserver :2345 hello Process hello created; pid=1000 Listening on port 2345 将hello程序复制到主机的相应目录,执行arm-linux-gdb: ./arm-linux-gdb hello 连接到开发板 (gdb) target remote :2345 何谓 core? 在使用半导体作为内存的材料前,人类是利用线圈当作内存的材料(发明 者为王安),线圈就叫作 core ,用线圈做的内存就叫作 core memory。如今 ,半导体工业澎勃发展,已经没有人用 core memory 了,不过,在许多情况下, 人们还是把记忆体叫作 core 。 何谓 core dump? 我们在开发(或使用)一个程序
显示全部