36.Linux应用调试-使用gdb和gdbserver
1.gdb和gdbserver调试原理 通过linux虚拟机里的gdb,来向开发板里的gdbserver发送命令,比如设置断点,运行setp等,然后开发板上的gdbserver收到命令后,便会执行应用程序做相应的动作,来实现调试的功能 和之前学的裸板GDB调试 一样,只不过之前学的是在win下的,本次是在linux里的gdb 1.1同样,它们都会需要一个带调试信息的编译文件. 通过Makefile里的arm-linux-gcc -g 来的, -g:表示编译文件里包含gdb调试信息 1.2为什么需要调试信息的编译文件? 比如读开发板的应用程序里的变量a: 首先gdb通过应用程序的带调试信息的编译文件,来找出变量a存的地址位置 然后将地址发送给开发板里的gdbserver,来读出a地址的值 2.安装gdb和gdbserver 首先进入官网下载gdb-7.4: http://ftp.gnu.org/gnu/gdb/ 2.1在虚拟机上安装GDB: # tar xjf gdb-7.4.tar.bz2 //解压 # cd gdb-7.4/ //进入gdb-7.4目录 # . / configure -- target = arm - linux //GDB需要在pc本机里运行,并调试开发板里的应用程序,所以--target设为arm-linux #make //编译