编译支持所有体系结构的gdb

作者: 罗蓁蓁 | 来源:发表于2017-02-07 20:54 被阅读665次

    准备工作:

    1. 下载自己所需的gdb源码
    1. Windows上安装好cygwin,作为移植工具
    2. 新建gdb文件夹,作为此次编译的工作空间
    3. 新建gdb/build文件夹,作为编译临时目录
    4. 新建gdb/install文件夹,作为安装目录
    5. 打开cygwin,切换到build文件夹下

    开始编译gdb

    我们要编译的gdb主要分几种:

    1. 适用于32位x86目标机的gdb
    2. 适用于32位loongson目标机的gdb
    3. 适用于32位ppc目标机的gdb
    4. 通用所有平台的gdb

    平台配置参数

    x86: i686-elf
    arm: arm-elf
    mips: mips-elf
    ppc: powerpc-eabi

    configure参数

    ../gdb-7.8/configure --target=i686-elf --prefix=f:/gdb/install

    ../gdb-7.8/configure --target=powerpc-eabi --prefix=f:/gdb/install

    ../gdb-7.2/configure --target=mips-elf --disable-werror --enable-interwork --enable-multilib --prefix=f:/gdb/install

    ../gdb-7.2/configure --target=arm-elf --disable-werror --enable-interwork --enable-multilib --prefix=f:/gdb/install

    通用所有平台并支持64位的gdb

    ../gdb-7.8/configure --enable-targets=all --enable-64-bit-bfd --prefix=f:/gdb/install

    编译步骤

    以所有平台的gdb为例

    ../gdb-7.8/configure --enable-targets=all --enable-64-bit-bfd --prefix=f:/gdb/install make make install

    编译完成后的检查
    若把../gdb/bin/gdb.exe拖到cygwin执行成功,则编译成功。

    编译脱离cygwin,可直接点击运行,需做的处理

    在gdb文件夹下的bin文件夹下拷贝出gdb.exe,放到cygwin的bin文件夹下,点击看能否执行成功。

    若成功,则把cygwin整个文件夹拷贝出来。然后一个个剔除掉不需要的文件。
    最后只留下gdb.exe和其相关文件。

    当然,也可以直接点击gdb.exe按照提示补充对应的文件,但这样可能最终仍无法执行。

    现在,我已经把需要的文件整理出来了,以后只需把编译的gdb.exe提出来放到整理好的文件里面就可以了。

    **注意,如果是使用的支持所有的体系结构的gdb,需要指定。命令是:set gnutarget *(elf64-x86-64)

    相关文章

      网友评论

        本文标题:编译支持所有体系结构的gdb

        本文链接:https://www.haomeiwen.com/subject/kjvmittx.html