文档章节

arm-linux gdb调试工具的安装

钟一鸣
 钟一鸣
发布于 2014/09/30 10:48
字数 451
阅读 2614
收藏 3

开发环境:AT91SAM9X25开发板:安装linux2.6.39;

pc的虚拟机:Linux version 2.6.18-194.el5  (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) ,arm-linux-gcc的版本为version 4.4.3

一、下载gbd http://ftp.gnu.org/gnu/gdb/;本人下载的是gdb-6.8。

二、安装

    (1)解压:tar zxvf gdb-6.8a.tar.gz

    (2)配置安装gdb:

       cd gdb-6.8

            ./configure --target=arm-linux

            make

            make install

        (3)配置安装gdbserver:

           cd gdb

           cd gdbserver      

            ./configure --target=arm-linux --host=arm-linux

            CC  = /usr/local/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc

            CC的值为arm-linux-gcc的路径,可以通过which arm-linux-gcc命令定位出来。arm-linux-gcc的安装请参照之前的博文。

           make

           通过以上几个命令,已经将gdb安装完成了。(请继续往下。。。。)

三、小试牛刀

           (1)在虚拟机下编写测试程序test.c,编译arm-linux-gcc -g -o test test.c

           (2)将gdbserver文件夹中的gdb和(1)中生成的test拷贝到开发板的工作目录下。

           (3)pc虚拟机下打开minicom,则当前在开发板的工作目录下输入./gdbserver 192.168.1.110:55555 test。尝试过好像此处ip地址貌似可以随便写,端口55555,随意写的,应该大于1024即可。

          此时,可能会出现如下错误:error in loading shared libraries: libthread_db.so.1: cannot open shared object file: No such file or directory

          解决步骤:<1>在虚拟机下找到arm-linux-gcc的安装目录,在/usr/local/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi/lib找到libthread_db-1.0.so文件。

                            <2>将该文件拷贝到开发板的/lib文件夹下,在该目录下打开终端,输入ln -s libthread_db-1.0.so libthread_db.so.1。

          (4)开发板输入如下:

          

         (5)虚拟机下输入如下:


       其中192.168.1.110是开发板的IP地址。请确保开发板和虚拟机可以ping通。

     (6)开发板中出现Remote debugging from host 192.168.1.220则表示GDB交叉编译可以使用。在gdb下输入命令c,test_arm将被程序。

    

         



© 著作权归作者所有

上一篇: ssh搭建
下一篇: c编程规范
钟一鸣
粉丝 0
博文 12
码字总数 7275
作品 0
海淀
程序员
私信 提问
eclipse调试arm裸机程序

一、集成开发环境 软件部分:eclipse , GDB Server , Jlink软件 硬件部分:Jlink硬件 准备工作1:从SD/NOR Flash启动,格式化nand flash 准备工作2:硬件连接 1. Jlink连接 2. 串口连接 3....

triston
2013/08/17
4.6K
3
gdb7.10.1的交叉编译以及远程调试

引子: 因为程序使用了第三方提供的openssl库,该openssl库是在官方源码的基础上进行定制,使用3G AT命令来收发数据,现在需要升级openssl的库,但是没有该库的定制后的源码。那么要搞清楚定...

MrStone
2017/05/24
0
0
GNU工具开发ARM嵌入式系统

GNU工具开发ARM嵌入式系统 当前,arm公司的32位RISC处理器,以其内核耗电少、成本低、功能强、特有16/32位双指令集,已成为移动通信、手持计算、多媒体数字消费等嵌入式解决方案的RISC标准,...

长平狐
2013/06/03
144
1
Qemu模拟ARM之gdb调试应用程序

Qemu模拟ARM之gdb调试应用程序 系统:Ubuntu16.04.4 32bit 交叉编译器:arm-linux-gnueabihf-gcc VMware:VMware Workstation 14 Pro u-boot:u-boot-2018.03 linux:linux-4.16.2 1.下载gdb......

wyy626562203
2018/05/05
0
0
在Debian中建立Beaglebone black的应用开发环境之三:cross-toolchain的安装

接着说第二个方面,安装cross-toolchain,注意,我前面说过,我不会说使用SDK来安装,我从头讲自己怎么建立一个cross-toolchain。以下都基于此。 一、cross-toolchain有哪几种? 适用用BBB的...

robeermy_cn
2014/03/13
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

好程序员Java学习路线分享MyBatis之线程优化

  好程序员Java学习路线分享MyBatis之线程优化,我们的项目存在大量用户同时访问的情况,那么就会出现大量线程并发访问数据库,这样会带来线程同步问题,本章我们将讨论MyBatis的线程同步问...

好程序员官方
27分钟前
6
0
IDEA 自定义方法注解模板

IDEA 自定义方法注解模板 1、使用效果 /*** 计算交易费用* @Author wangjiafang* @Date 2019/9/11* @param feeComputeVo* @return*/@PostMapping("/v1/fee_compute")public ApiResp......

小白的成长
27分钟前
6
0
转:进程 线程 协程 管程 纤程 概念对比理解

引言 不知道是不是我自己本身就有那么一丝丝的密集恐惧,把这么一大堆看起来很相似很相关的概念放在一起,看起来是有点麻,捋一捋感觉舒服多了。 相关概念 任务、作业(Job,Task,Schedule)...

xiaomin0322
38分钟前
6
0
前端数组转化成字符串

val=val.join(","); 转化后:“1,2,3”

郭周园
40分钟前
4
0
Spring Boot Admin配置详解

Client端配置 参数 默认值 说明 spring.boot.admin.client.enabled true 是否启用springbootAdmin客户端 spring.boot.admin.client.url 要注册的server端的url地址。如果要同时在多个server端...

兜兜毛毛
40分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部