交叉编译gdb for mips

1 下载并解压gdb源码

mkdir -p /data/plat/gdb && cd /data/plat/gdb
wget http://ftp.gnu.org/gnu/gdb/gdb-7.3.1.tar.gz
tar xf gdb-7.3.1.tar.gz
cd gdb-7.3.1

2 编译gdb

2.1 编译termcap

mkdir -p /data/plat/termcap && cd /data/plat/termcap
wget ftp://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz
tar xf termcap-1.3.1.tar.gz
cd termcap-1.3.1

# 这里要注意设置环境变量, 用本机gcc编的不能被识别
export CC=mips-linux-gcc && export AR=mips-linux-ar && ./configure --build=i386-linux --host=mips-linux --target=mips-linux --prefix=/data/plat/termcap_lib
make && make install

# 查看统计链搜索目录
mips-linux-gcc --print-file-name libc.a

# 将libtermcap.a库软链到编译器的libc.a目录下
cd /opt/toolchains/crosstools-mips-gcc-4.6-linux-3.4-uclibc-0.9.32-binutils-2.21/usr/mips-unknown-linux-uclibc/sysroot/usr/lib
ln -s /data/plat/termcap_lib/lib/libtermcap.a .
cd ../include
ln -s /data/plat/termcap_lib/include/termcap.h .
cd /data/plat/gdb/gdb-7.3.1
mkdir build && cd build

# --build: 表示构建的机器类型
# --host: 表示目标机器类型
# --target: 指定用于编译目标机器代码的编译器
./configure --build=i386-linux --host=mips-linux --target=mips-linux --enable-static --with-static-standard-libraries --prefix=$PWD/install
make && make install
# 去除符号信息
cd gdb && mips-linux-strip gdb

其他

  • 交叉编译gdb 12.1 需要先交叉编译gmp,然后按照编译termcap的方式将对应的库链到编译链相关路径下
    相关的编译配置命令需改为 ./configure --build=i386-linux --host=arm-linux --target=arm-linux --with-static-standard-libraries --prefix=$PWD/install LDFLAGS='-static -pthread'

参考

  • https://blog.csdn.net/feixiang3839/article/details/41093021
  • https://blog.csdn.net/ai2000ai/article/details/50441845
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值