开发板安装gdbserver 这个别人安装好了 我直接用
./test 要调试的程序 此程序要在pc上使用-g选项编译
{ qt的-g Makefile.Release文件
.. 为其他选项
CFLAGS = .. .. -g .. .. ..
CXXFLAGS = .. .. -g .. .. ..
LINK = arm-cortex_a9-linux-gnueabi-g++ -g
}
然后用xftp 把编译结果test拷贝到开发板上
开发板进入test程序所在目录 输入 gdbserver 192.168.18.199:6666 ./test
192.168.18.199:6666 PC机的ip以及调试端口
开发板打印如下信息
Remote debugging from host 192.168.18.199
在PC机 打开wsl 进入test目录
输入 arm-cortex_a9-linux-gnueabi-gdb test
arm-cortex_a9-linux-gnueabi-gdb 交叉译器名 可用绝对路径
test 测试程序
输入target remote 192.168.18.200:6666
输入c
如果提示有些动态库找不到
info sharedlibrary 打印未找到的所有动态库
set solib-search-path addr0:addr1:addr2:addr3 设置动态库路径
set solib-search-path /usr/local/khronos/libs:/usr/local/qt5.5.1-arm/lib:/usr/local/ffmpeg_4_1_3/lib:/usr/local/qt5.5.1-arm/plugins/platforms::/usr/local/qt5.5.1-arm/plugins/egldeviceintegrations:/usr/local/qt5.5.1-arm/plugins/platforminputcontexts:/usr/local/qt5.5.1-arm/plugins/imageformats:/usr/local/qt5.5.1-arm/plugins/generic:/usr/local/qt5.5.1-arm/plugins/sqldrivers
然后输入c开始调试
有些warning 先无视
当程序崩溃时 ,输入bt 查看调用栈
查找错误在哪里