我正在尝试从x86计算机到远程ARM设备执行跨平台远程调试。 (例如:Beagle Bone Black)
我正在使用Ubuntu 14.04和Eclipse CDT。
我安装了包 gcc-arm-linux-gnueabihf ,但gdb调试器不在该包中。 (http://packages.ubuntu.com/precise/gcc-arm-linux-gnueabihf)
因此,我想知道我是否应该使用Linaro工具链(包括 arm-linux-gnueabihf-gdb )或者是否应该安装 gdb-multiarch 封装
gdb-multiarch和arm-linux-gnueabihf-gdb有什么区别? 使用gdb-multiarch更好吗?
ssinfod
答案 0 :(得分:8)
我收到了linaro邮件列表的回复:
对于从12.04开始的Ubuntu主机,gdb-multiarch用作gdb客户端进行调试。顾名思义,它是任何架构的通用客户端,不限于ARM。
通常,所有gdb客户端都是独立于体系结构的,因为体系结构特定部分是在gdbserver本身中处理的。所以,除了名称arm-linux-gnueabihf-gdb之外,我猜它和gdb-multiarch一样。
答案 1 :(得分:1)
我从linaro邮件列表中收到了另一个答案:
Linaro gdb版本通常会比版本更新 Ubuntu一个。例如,我们的最新版本是7.8,仅此而已 如果你计划使用Ubuntu LTS,那么utopic可用,不可靠 发布它可能会更好地使用Linaro发布的gdb。 Linaro gdb 还包含不在上游的修复和改进 稳定的分支。从历史上看,Ubuntu经常选择这些更改 也可能并非总是如此。
gdb-multiarch显然支持一系列其他架构 除了ARM,那么如果这对你有用的话 使用它可能是有意义的。