我在Ubuntu 12.04上安装了 GCC-ARM-LINUX-GNUEAEABIHF 交叉补偿器,现在我能够为嵌入式设备构建程序。我在哪里可以找到可调试的交叉GDB?
gcc-arm-linux-gnueabihf参考文献中包含gdb-arm-linux-gnueabihf在相关软件包列表中,这似乎是我正在寻找的调试器。但是此软件包不可用。
我建议从Linaro工具链而不是Ubuntu存储库中获取 GDB 。从这里下载GCC-Linaro-arm-arm-linux-gnueabihf-4.7-2012.10-20121022_linux.tar.bz2此处,您会发现:
-
bin/arm-linux-gnueabihf-gdb
-
arm-linux-gnueabihf/debug-root/usr/bin/gdbserver
后者是静态链接的,当然是为ARM Linux链接的。
假设您已经设置了目标板的网络,请复制gdbserver
并运行:
$ gdbserver --multi :2345
在您的开发机器上,运行:
$ arm-linux-gnueabihf-gdb
(gdb) target extended BOARD-IP-ADDR:2345
(gdb) set remote exec-file /bin/true
(gdb) run
,您正在启动并通过远程交叉调试。
链接到Linaro错误跟踪器,邮件列表和Web论坛。从他们的发行说明中可以看到,它们在ARM Linux工具链,内核,QEMU开发中非常活跃。
您需要安装GDB-Multiarch软件包,然后运行GDB-Multiarch命令以远程调试您的目标。