【原创文章】helper2416开发板GDB远程调试的总结技巧
[复制链接]
1 .生成可调试程序 比如一个源文件:main.cpp 交叉编译生成test 加-g生成调试信息. arm-linux-gcc main.cpp -g -o test 千万不要strip,否则调试信息就不存在了.
2. gdbserver调试 假设板子IP为192.168.0.19, pc ip为192.168.0.108 板子上: gdbserver 192.168.0.108:2345 ./test pc上: gdbx86 ./test gdbx86得自行编译gdb源码生成针对arm平台的程序, This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux". 网上可查 连接gdbserver(怎么编译生成它网上有文章) target remote 192.168.0.19:2345 然后就可以 下断点了, 然后 c 程序开始跑.
1,2两点估计做嵌入式开发的都知道, 3则可能有些人没有遇到过 3 调试远程开发板产生的core 板子上使能core dump ulimit -c unlimited 然后跑程序 ./test 如果程序产生core , 不用gdbserver, 直接把core挎到pc上, 然后用上面提到的gdbx86调试它, gdbx86 ./test core
|