为armv6编译gdb

为armv6编译gdb

Compiling gdb for armv6

我正在尝试为armv6架构构建gdb。 我将在Fedora Linux-Intel x86盒上编译此软件包。 我阅读了安装gdb的过程,例如

  • 下载源文件

  • 运行configure -host

  • make

  • 但是我迷路了,因为我无法确定configure脚本所需的主机,目标。

    我基本上需要能够调试在运行Linux内核2.6.21.5-cfs-v19的armv6体系结构板上运行的程序。 我打算在编译源代码后获得的gdb可执行文件也需要能够在上述配置下运行。

    现在要获得适用于该配置的gdb可执行文件,我应该遵循哪些步骤?


    我们(www.rockbox.org)将arm目标用于整批当前正在使用的DAPS。我们指定的目标通常是arm-elf,而不是arm-linux。


    注意arm-linuxarm-elf的关系。

    • http://sources.redhat.com/ml/crossgcc/2005-11/msg00028.html

      arm-elf is a standalone toolchain which does not require an underlying OS. So you can use
      it to generate programs using newlib

      arm-linux is a toolchain targetted to generate code for linux OS running on an ARM machine

    有时我们说arm-elf代表"裸机"。
    不幸的是,还有另一个"裸机"目标arm-eabi,没人知道这两者之间到底有什么区别。

    顺便说一句,

    The gdb executable which i intend to obtain after compilation of the source,also needs to be able to run on above mentioned configuration.

    真?在ARM板上运行GDB可能会很慢。
    我推荐你

  • 从x86 PC远程调试ARM板
  • 将内存核心保存在ARM板上,将其传输到x86 PC,然后在其中进行检查
  • cf.

    • http://elinux.org/GDB
    • 使用gdb和gdbserver不能识别线程的跨平台,多线程调试(从x86到ARM)
    • http://www.chromium.org/chromium-os/how-tos-and-troubleshooting/remote-debugging

    目标/主机通常是您将要使用的目标工具链(主要是arm-linux)


    推荐阅读