用GDB Server进行远程调试
某些时候由于模拟环境的限制,调试必须要在目标板上进行。由于 嵌入式系统 资源比较有限,一般不能在目标板上直接构建GDB的调试环境,这时我们通常采用gdb+gdbserver的远程调试方法:gdbserver在目标板中运行,而gdb则在主机上运行。 构建gdb+gdbserver调试环境的在于,要将gdb和gdbserver都编译成适用于目标板的版本。比如我们用x86的主机和 ARM 目标板,平时在主机上直接调试的时候都使用用于x86调试的gdb,但这个gdb不能用于远程调试中,需要针对 ARM 平台进行配置之后重新编译才行;而gdbserver要运行在目标板上,则需要用arm-linux-gcc编译才行。 我们可以从 http://ftp.gnu.org/gnu/gdb/ 或其他站点下载GDB的源代码来进行编译。得到源代码包gdb-6.6.tar.gz之后,将target配置成arm- linux ,然后进行编译: $ tar xzvf gdb-6.6.tar.gz $ cd gdb-6.6 $ ./configure --target=arm-linux $ make $ make install 注意这时我们编译的是用于主机上的gdb程序,因此仍然用x86版本的gcc编译,而不是用arm-gcc。而接下来我们要编译的gdbserver程序则是运行在目标板上的,需要用arm