Chinaunix首页 | 论坛 | 博客
  • 博客访问: 54891
  • 博文数量: 23
  • 博客积分: 1598
  • 博客等级: 上尉
  • 技术积分: 210
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-27 10:26
文章分类

全部博文(23)

文章存档

2011年(2)

2010年(21)

我的朋友

分类: LINUX

2011-03-30 16:32:20

1.下载
下载最新的gdb-7.2.tar.gz
2.简介
GDB使用了autoconf/automake,因此编译时只需配置configure脚本的--target,--host,--prefix等参数就可实现方便的移植。
--target:指定编译环境,一般设置为交叉编译器前缀,ix86-linux,arm-linux等
--prefix;指定安装路径。
--host:指定编译后文件运行平台,一般设置为交叉编译器前缀,ix86-linux,arm-linux等
--program-prefix:将生成可执行文件前加前缀
3.编译安装gdb
nsfww@gdb:#cd /opt
nsfww@gdb/opt:#tar zxvf gdb-7.2.tar.gz
nsfww@gdb/opt:#mkdir gdb
nsfww@gdb/opt:#cd gdb-7.2
nsfww@gdb/opt/gdb-7.2:#./configure --target=arm-linux --prefix=/opt/gdb
nsfww@gdb/opt/gdb-7.2:#make
****此处可能会的错误************
configure:error:no termcap library found
****解决方法********************
nsfww@gdb/opt/gdb-7.2:#apt-get install libncurses5-dev
nsfww@gdb/opt/gdb-7.2:#make install
安装成功会在/opt/gdb/bin下看到以下三个文件
arm-linux-gdb arm-linux-gdbtui arm-linux-run
4为arm-linux-gdb添加环境变量 
在添加环境变量之前先确定自己系统没有安装其它版本的arm-linux-gdb,可通过命令
nsfww@gdb/opt/gdb:#arm-linux-gdb --v
如果系统已经安装arm-linux-gdb,但版本不同则最好将已安装版本删除掉,否则会导致后续调试出现问题
*******************************************************************************************
我在安装gdb时没有做这一步的检查,导致最后进行调试过程中因为gdb和gdbserver版本不同经常出现如下错误:******************
 ***arm-linux-gdb********                   ****arm-linux-gdbserver********
#arm-linux-gdb gdbtest            #arm-linux-gdbserver hostIP:portnum gdbtest
  ******  一些打印信息                                       Listening on port portnum 
                                                        
 
(gdb)target remote bordIP:portnum          
Remote debugging using bordIP:portnum                Remote debugging from host hostIP
Couldn't establish connection to remote target       readchar:Got EOF
Remote failure reply:EO1          Remote side has terminated connection.   (gdb)                                                GDBserver will reopen the connection
******************************************************************************************
将/opt/gdb/bin加入环境变量/etc/profile中
再次验证系统arm-linux-gdb版本为所安装版本及7.2
5.编译安装#arm-linux-gdbserver
nsfww@gdb/opt:#mkdir gdbserver
nsfww@gdb/opt:#cd gdb-7.2/gdb/gdbserver
nsfww@gdb/opt/gdb-7.2/gdb/gdbserver:#./configure --target=arm-linux --host=arm-linux --prefix=/opt/gdbserver
nsfww@gdb/opt/gdb-7.2/gdb/gdbserver:# make CC=arm-linux-gcc 
nsfww@gdb/opt/gdb-7.2/gdb/gdbserver:#make install
安装成功会在/opt/gdbserver/bin目录下生成arm-linux-gdbserver文件
6.拷贝/arm/lib目录下libthread_db-1.0.so和生成的rm-linux-gdbserver到开发板
将libthread_db-1.0.so放在开发板/lib目录下
#ln -s libthread_db-1.0.so libthread_db.so.1
#ln -s libthread_db.so.1 libthread_db.so
7.eclipse + cdt + gdb 进行arm linux 交叉调试




阅读(2356) | 评论(0) | 转发(0) |
0

上一篇:牛人教你怎么买火车票

下一篇:没有了

给主人留下些什么吧!~~