zoukankan      html  css  js  c++  java
  • cross compile gdbserver

    1. 下载gdb源码,7.12版本,下载地址:ftp://ftp.gnu.org/gnu/gdb。
    2. 编译gdb:
    0> cd gdb-7.12
    1> mkdir __install
    2> ./configure --target=arm-linux --enable-shared --prefix=$(pwd)/__install --without-x --disable-gdbtk --disable-tui --without-included-regex --without-included-gettext
    3> make && make install
    4> 可以看到gdb-7.12/gdb/下面有编译成功的gdb程序。
    3. 编译gdbserver:
    0> export PATH=/path to/__install/bin:$PATH 将上一步编的gdb添加环境变量。
    1> cd gdb-7.12/gdb/gdbserver
    2> vim linux-arm-low.c,添加如下代码:
    #ifndef __NR_sigreturn
    #include "/path to/asm/unistd.h"
    #endif
    源码有错误,找不到__NR_sigreturn定义,故而需要我们在板子系统交叉编译库里找到这个定义。
    3> ./configure --target=arm-linux --host=arm-linux CC=/path to/arm-himix200-linux-gcc CXX=/path to/arm-himix200-linux-g++ AR=/path to/arm-himix200-linux-ar
    需要注意的是,这里的target是arm-linux,根据板子系统而定。后面的CC、CXX、AR要使用板子系统对应的gnu版本编译器,用来交叉编译。
    4> make
    5> 可以看到gdb-7.12/gdb/gdbserver下面有编译成功的gdbserver程序。
    4. 然后把gdbserver丢到板子上用,gdb留pc机上用,大功告成。

  • 相关阅读:
    arm单板上移植gdb
    video on web
    chromium源码阅读
    CE-HTML简介
    multi-tap
    DPDK 网卡RSS(receive side scaling)简介
    c语言实现带LRU机制的哈希表
    Linux TCP协议使用的变量
    scp源码浅析
    Linux e1000e网卡驱动
  • 原文地址:https://www.cnblogs.com/jiu0821/p/10778522.html
Copyright © 2011-2022 走看看