arm-linux-gdb安装日记
2013-07-30 17:05
274 查看
我写的嵌入式程序最近升级出了点问题,需要使用gdb来进行调试
上一次调试已经是一年半以前了,在开发平台中找了半天发现已经没有了,为什么没有了,我还真记不起来怎么丢的啊?
1. 先下载gdb源码,可是gdb源码在哪个网站也记不得了,那就google一下吧,嗯,很容易的
http://ftp.gnu.org/gnu/gdb/
为了兼容性考虑,就不要和开发环境差太多吧,本机的原有的gdb
pc版本
2. gdb --version
GNU gdb Fedora (6.8-1.fc9)
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to
change and redistribute it.
There is NO WARRANTY, to the extent permitted
by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu".
可以看到版本是6.8
3. 下载一个gdb-6.8a.tar.gz,好家伙,随便一个工具现在都是20M了,最新版的7.5已经快30M了。
做习惯了嵌入式系统的抠门劲,都有些不适应这种数字啊。真是太奢侈,太浪费了。
解压缩
tar zxvf gdb-6.8a.tar.gz
配置一下
cd gdb-6.8
#./configure --target=arm-linux
make
就看见刷刷刷无数字符翻滚,时间不算太长,编好了
先装上吧
make install
因为没有使用--prefix配置,所以默认装在了/usr/local/bin
4. 接下来编译gdbserver,
cd gdbserver
#./configure --target=arm-linux --host=arm-linux
CC = /usr/local/arm/4.3.1/bin/arm-linux-gcc
make
编译中提示hostio.c PATH_MAX宏找不到,老实说我也不知道这个宏原本应该在哪里,看名字意思应该是最大路径长度,随便写个1024差不多够用了吧(上google搜一下,有人建议用4095)
这下都编译通过了
5.接下来编译我自己要调试的代码,我的程序较LATest,编译的时候增加一个-g选项就可以了。
把编译好的LATest,arm-linux-gdbserver
都拷贝到开发板的对应目录下
./arm-linux-gdbserver 192.168.1.252:1234 LATest
192.168.1.252是我的PC机的IP地址。
6.在pc机端启动gdb,我的开发板地址192.168.1.233 输入连接命令
[root@localhost ~]# arm-linux-gdb LATest
(gdb) target remote 192.168.1.233:1234
Remote debugging using 192.168.1.233:1234
[New Thread 933]
0x40000860 in ?? ()
(gdb)
7.输入命令b main,把断点停在main函数入口
终于可以开始调试了
上一次调试已经是一年半以前了,在开发平台中找了半天发现已经没有了,为什么没有了,我还真记不起来怎么丢的啊?
1. 先下载gdb源码,可是gdb源码在哪个网站也记不得了,那就google一下吧,嗯,很容易的
http://ftp.gnu.org/gnu/gdb/
为了兼容性考虑,就不要和开发环境差太多吧,本机的原有的gdb
pc版本
2. gdb --version
GNU gdb Fedora (6.8-1.fc9)
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to
change and redistribute it.
There is NO WARRANTY, to the extent permitted
by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu".
可以看到版本是6.8
3. 下载一个gdb-6.8a.tar.gz,好家伙,随便一个工具现在都是20M了,最新版的7.5已经快30M了。
做习惯了嵌入式系统的抠门劲,都有些不适应这种数字啊。真是太奢侈,太浪费了。
解压缩
tar zxvf gdb-6.8a.tar.gz
配置一下
cd gdb-6.8
#./configure --target=arm-linux
make
就看见刷刷刷无数字符翻滚,时间不算太长,编好了
先装上吧
make install
因为没有使用--prefix配置,所以默认装在了/usr/local/bin
4. 接下来编译gdbserver,
cd gdbserver
#./configure --target=arm-linux --host=arm-linux
CC = /usr/local/arm/4.3.1/bin/arm-linux-gcc
make
编译中提示hostio.c PATH_MAX宏找不到,老实说我也不知道这个宏原本应该在哪里,看名字意思应该是最大路径长度,随便写个1024差不多够用了吧(上google搜一下,有人建议用4095)
这下都编译通过了
5.接下来编译我自己要调试的代码,我的程序较LATest,编译的时候增加一个-g选项就可以了。
把编译好的LATest,arm-linux-gdbserver
都拷贝到开发板的对应目录下
./arm-linux-gdbserver 192.168.1.252:1234 LATest
192.168.1.252是我的PC机的IP地址。
6.在pc机端启动gdb,我的开发板地址192.168.1.233 输入连接命令
[root@localhost ~]# arm-linux-gdb LATest
(gdb) target remote 192.168.1.233:1234
Remote debugging using 192.168.1.233:1234
[New Thread 933]
0x40000860 in ?? ()
(gdb)
7.输入命令b main,把断点停在main函数入口
终于可以开始调试了
相关文章推荐
- Ubuntu下arm-linux-gdb+gdbserver的编译及安装
- fedora18下安装Arm-linux-gdb
- centos下安装arm-linux-gdb缺少termcap库的问题
- ubuntu12.04 安装 arm-linux-gdb
- arm+linux 裸机环境搭建之安装工具篇(gcc与gdb)
- arm-linux-gcc/gdb 安装出现 浮点数例外的原因
- 安装 arm-linux-gdb7.5 & 可能出现的两类问题解决
- arm-linux-gdb的使用日记
- arm-linux-gdb正确无错误安装
- arm-linux-gdb 交叉编译工具的安装使用
- arm-linux gdb调试工具的安装
- fedora 12 下arm-linux-gcc-3.3.2,arm-linux-gcc-3.4.1以及gdb-7.0的安装
- arm-linux-gdb安装
- ubuntu里的arm-linux-gdb安装
- 安装 arm-linux-gdb7.5 & 可能出现的两类问题解决
- CentOS7 安装arm-linux-gdb-7.5
- arm-linux-gdb调试工具的安装与交叉编译gdbserver
- 安装arm-linux-gdb经验总结
- ARM-----------arm-linux-gdb正确无错误安装
- 64位Ubuntu12.04下安装arm-linux-gdb,以及解决no termcap library found的方法