嵌入式开发远程调试arm-linux-gdb的移植
2010-01-27 16:17
645 查看
远程调试工具arm-linux-gdb的移植:
因为编译gdb的时候要用到ncurses的lib,所以要先编译出ncurses的lib库,而这个库又要用到gmp的Lib,所以需要以下三个包:
gmp-4.2.1.tar.gz,ncurses-5.2.tar.gz,gdb6.4.tar.gz
(1)安装gmp-4.2.1.tar.gz
tar zxvf gmp-4.2.1.tar.gz
./configure --host=arm-linux --prefix=/opt/arm-gmp
make CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as NM=arm-linux-nm STRIP=arm-linux-strip OBJCPY=arm-linux-objcopy
make isntall
(2)安装ncurses-5.2.tar.gz
(3)安装gdb6.4.tar.gz
这个过程中学到了:
(1).grep命令的使用,-r(递归) –n(打印行号)
grep "no termcap library found" * -rn,编译时会出错,然后通过这个命令查找configure文件打印这个信息的行号然后加以改正:或注释或修改.
(2).生成core文件之前需要执行的命令.(生成core文件之前需要将本来应该traip的文件的traip动作关掉,因为这样才能有程序的符号表也就才能有真的gdb的结果.)
ulimit -c 2000
(3).修改的./gdb/configure的脚本文件.
gdb/configure
#if test "$ac_cv_search_tgetent" = no; then
# { { echo "$as_me:$LINENO: error: no termcap library found" >&5
#echo "$as_me: error: no termcap library found" >&2;}
# { (exit 1); exit 1; }; }
#fi
tar zxvf gdb6.4.tar.gz
./configure --host=arm-linux --prefix=/opt/arm-gdb --target=arm-linux --build=i686-linux
make CC=arm-linux-gcc,这个步骤可能会出现问题,看下面的解决办法。
下面语句是因为没有配置好ncurses,手动加上的ncurses库,
arm-linux-gcc -g -o2 -o gdb gdb.o libgdb.a ../readline/libreadline.a ../opcodes/libopcodes.a ../bdf/libbfd.a ../libliberty/libiberty.a
tar zxvf ncurses-5.2.tar.gz
./configure --host=arm-linux --prefix=/opt/arm-ncurses
make CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as NM=arm-linux-nm STRIP=arm-linux-strip OBJCPY=arm-linux-objcopy
make isntall
因为编译gdb的时候要用到ncurses的lib,所以要先编译出ncurses的lib库,而这个库又要用到gmp的Lib,所以需要以下三个包:
gmp-4.2.1.tar.gz,ncurses-5.2.tar.gz,gdb6.4.tar.gz
(1)安装gmp-4.2.1.tar.gz
tar zxvf gmp-4.2.1.tar.gz
./configure --host=arm-linux --prefix=/opt/arm-gmp
make CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as NM=arm-linux-nm STRIP=arm-linux-strip OBJCPY=arm-linux-objcopy
make isntall
(2)安装ncurses-5.2.tar.gz
(3)安装gdb6.4.tar.gz
这个过程中学到了:
(1).grep命令的使用,-r(递归) –n(打印行号)
grep "no termcap library found" * -rn,编译时会出错,然后通过这个命令查找configure文件打印这个信息的行号然后加以改正:或注释或修改.
(2).生成core文件之前需要执行的命令.(生成core文件之前需要将本来应该traip的文件的traip动作关掉,因为这样才能有程序的符号表也就才能有真的gdb的结果.)
ulimit -c 2000
(3).修改的./gdb/configure的脚本文件.
gdb/configure
#if test "$ac_cv_search_tgetent" = no; then
# { { echo "$as_me:$LINENO: error: no termcap library found" >&5
#echo "$as_me: error: no termcap library found" >&2;}
# { (exit 1); exit 1; }; }
#fi
tar zxvf gdb6.4.tar.gz
./configure --host=arm-linux --prefix=/opt/arm-gdb --target=arm-linux --build=i686-linux
make CC=arm-linux-gcc,这个步骤可能会出现问题,看下面的解决办法。
下面语句是因为没有配置好ncurses,手动加上的ncurses库,
arm-linux-gcc -g -o2 -o gdb gdb.o libgdb.a ../readline/libreadline.a ../opcodes/libopcodes.a ../bdf/libbfd.a ../libliberty/libiberty.a
tar zxvf ncurses-5.2.tar.gz
./configure --host=arm-linux --prefix=/opt/arm-ncurses
make CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as NM=arm-linux-nm STRIP=arm-linux-strip OBJCPY=arm-linux-objcopy
make isntall
相关文章推荐
- 【嵌入式Linux学习七步曲之第二篇 ARM+Linux开发环境】gdb+gdbserver的方式进行ARM程序调试
- 【嵌入式Linux学习七步曲之第二篇 ARM+Linux开发环境】gdb+gdbserver的方式进行ARM程序调试
- 基于Eclipse的arm-linux的远程GDB调试
- 【ARM-Linux开发】嵌入式操作系统上的小型数据库移植SQLite
- 使用gdb、gdbserver在ARM-Linux下进行远程调试
- 【嵌入式Linux学习七步曲之第二篇 ARM+Linux开发环境】详解gdb+gdbserver运行问题./gdbserver: error in loading shared libraries
- Eclipse远程开发调试Linux应用程序,Eclipse+cdt+Uniwin+Ubuntu+gcc+gdb,打造超级Linux开发平台
- gdbserver调试工具移植到ARM Linux教程
- gdb远程调试arm+linux上的应用程序
- 嵌入式Linux系统的GDB远程调试的实现
- 嵌入式Linux系统的GDB远程调试的实现
- arm-linux-gdb+gdbserver环境搭建以及远程调试
- arm-linux-gdb(宿主机)+gdbserver(目标机)远程调试
- arm-linux-gdb+gdbserver环境搭建以及远程调试
- 嵌入式Linux系统的GDB远程调试实践
- 嵌入式Linux的GDB远程调试的实现
- gdbserver远程调试嵌入式linux应用程序方法
- arm 嵌入式下的 gdb 远程调试
- arm-linux-gdb+gdbserver环境搭建以及远程调试
- Emacs+GDB远程调试ARM-LINUX程序