博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
arm-linux-gdb+gdbserver环境搭建以及远程调试
阅读量:7028 次
发布时间:2019-06-28

本文共 1602 字,大约阅读时间需要 5 分钟。

0) gdb源码下载:

1) 编译arm-linux-gdb

    指定交叉编译工具链的位置

    export PATH=$PATH:/usr/local/arm/3.4.1/bin

    开始配置和编译

    $cd gdb-6.6

    $./configure --target=arm-linux --prefix=/usr/local/arm/gdb -v
   $make
   

中间会出现一些地方编译过去,如

gdb declared with attribute warn_unused_result

 检查了下,发现是由于检查太严格了,把 Makefile 里面 -Wall 类似的强制警告检查都去掉就可以过了

 

2) 编译gdbserver

    $cd gdb/gdbserver
    $./configure --target=arm-linux --host=arm-linux
      target含义同前,host指明编译生成的gdbserver运行在arm-linux上,前者没有设定host的原因是
      arm-linux-gdb是在pc linux上运行的,就像arm-linux-gcc (很好理解的:))
    $
make CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc

 

   #gdbserver 192.168.1.200:7777 test

     Process test created; pid                                                                                   
     Listening on port 7777
   主机shell下
   $cd ~/tftpboot
   $arm-linux-gdb test
    GNU gdb 6.6 
    Copyright (C) 2006 Free Software Foundation, Inc.
    GDB is free software, covered by the GNU General Public License, and you are
    welcome to change it and/or distribute copies of it under certain conditions.
    Type "show copying" to see the conditions.
    There is absolutely no warranty for GDB. Type "show warranty" for details.
    This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux"...
    (gdb)
    注意一下显示信息的最后--host=i686-pc-linux-gnu --target=arm-linux,明白了吧。。。
    target remote 192.168.1.168:7777   --连接gdbserver
    Remote debugging using 192.168.1.168:7777
    0x40000dd0 in _start () from /lib/ld-linux.so.2
    表示连接上了服务器,:),接下来就可以调试了。arm-linux-gdb和GDB的用法一样,只是没有r这个命   
   令,运行程序用c命令。
    (gdb) l
   1       #include<stdio.h>
   2
   3       int main()
   4       {
   5               char *ptr = "csdn";
   6               printf("%c/n",*(ptr++));
   7               return 0;
   8       }
    (gdb) b 3
   Breakpoint 1 at 0x83d0: file test.c, line 3.
   另外由于程序是在目标板上运行,调试是在PC下,程序的结果还是会在目标板上显示的, 
   例如:minicom,lcd等。
   btw,附近一篇介绍GDB使用的文章:,这下全了吧。哈

转载地址:http://hjrxl.baihongyu.com/

你可能感兴趣的文章
01-数据仓库之数据建模
查看>>
Nginx 安装
查看>>
hidesBottomBarWhenPushed 设置为NO的问题
查看>>
cisco常用命令详解
查看>>
谁在追踪谁?
查看>>
HTTP请求返回状态码详解
查看>>
句柄类
查看>>
GitLab
查看>>
【常用配置】Spring框架web.xml通用配置
查看>>
[leetcode 240]Search a 2D Matrix II
查看>>
域名指的是这一级目录
查看>>
[Angular] Creating an Observable Store with Rx
查看>>
[转]Porting to Oracle with Entity Framework NLog
查看>>
chmod更改文件的权限
查看>>
oracle 10g/11g RAC 启停归档模式
查看>>
poj3461 Oulipo
查看>>
OAuth2.0学习(1-12)开源的OAuth2.0项目和比较
查看>>
Gitlab,这也就O了???
查看>>
2014 百度之星 1003 题解 Xor Sum
查看>>
Linux中在主机上实现对备机上文件夹及文件的操作的C代码实现
查看>>