gdbserver
下载gdb代码
进入 代码目录下 gdbserver目录
./configure --host=arm-linux --target=arm-linux --prefix=$PWD/_install
make -j5
make install
进入 gdb目录
./configure --target=arm-linux --prefix=$PWD/_install
make -j5
make install
arm-linux-gcc main.c -g
将 arm-linux-gdbserver放到开发板,
运行 arm-linux-gdbserver 192.168.4.11:111 ./a.out
在主机运行
arm-linux-gdb ./a.out
target remote 192.168.4.11:111
当程序使用动态链接,gdb会报找不到库的调试信息,
需要将库重新编译加 -g 选项,将编译的库放到目标主机上,确保程序运行正确。
对于静态库,需要保证静态库文件和目标文件放在宿主机上,gdb能找到
若使用动态库可能找不到库中定义的函数,可以使用 set heuristic-fence-post 40960 增加搜索范围