一、在目标机上安装gdbserver服务。
运行
gdbserver :2345 你要调试的程序
二、编译gdb(重点)
1、下载gdb源,下载msys2-x86_64-20220118.exe。
2、安装msys2
3、到Msys2安装目录下运行mingw64.exe
4、安装以下包
pacman -Syu
pacman -S mingw-w64-x86_64-toolchain
pacman -S texinfo
pacman -S patch
pacman -S gcc
pacman -S make
5、将解压的gdb源拷贝到Msys2目录中
6、编译gdb
cd gdb源目录
mkdir build output
../configure --enable-targets=all --enable-64bit-bfd --prefix=C:/msys64/gdb-9.2/output
#这一行是编译所有的目标架构。这样才能在Linux下使用。Lazarus自带的GDB要针对不同的目标架构进行选择,有的还没有。这就是要编译GDB的原因。
make -j4
make install
完成后在output的bin中就会有gdb.exe和gdbserver.exe。
三、设置Lazarus。
菜单-工具-选项-debugger-调试器后端
增加一个分类 Linux
点击 更改类型 选择 gnu remote debugger(gdbserver)
在下面输入框中选择第二步中编译好的文件gdb.exe
设置参数
debugger_remote_hostname 你的目标机ip
debugger_remote_port 第一步中的端口号 一般为2345
点击运行,就可以在目标机上运行了。
注意:感觉gdb没有fpDebug好用。有时会卡死