Eclipse-cdt 配合 gdbserver 进行 arm 程序远程调试 下

简介: 上一篇中,介绍了如何编译、运行arm-linux-gdb 和 gdbserver,这一篇中介绍怎样结合Eclipse-cdt进行图形化编译调试 首先当然是使用CDT创建项目并添加源文件。 在左侧 Project Explorer 的项目名上点右键->Properties 进入项目属性设置 选...

上一篇中,介绍了如何编译、运行arm-linux-gdb 和 gdbserver,这一篇中介绍怎样结合Eclipse-cdt进行图形化编译调试

首先当然是使用CDT创建项目并添加源文件。

  1. 在左侧 Project Explorer 的项目名上点右键->Properties 进入项目属性设置
  2. 选择 C/C++ Build->Settings 在Tool Settings中,将Toolchain修改为arm版本
    GCC C Compiler :arm-linux-gcc
    GCC C Linker : arm-linux-gcc
    GCC C Assembler :arm-linux-ar

    其他选项默认就好,有需要自己修改



  3. [可选]Build Steps 这里可以填些编译步骤,我这里希望编译后自动将程序拷贝到tftpd的目录以方便arm端直接下载
    那么就在Post-build steps -> Command: 中填写

     

    cp ipcam /tftpboot

编译部分修改完,接下来是调试部分

  1. 选中项目->菜单栏 ”Run“->Debug Configurations…
  2. 双击C/C++ Applecation 新建一个配置,Eclipse会根据当前选择的项目初始化大部分配置,这里只需修改Debugger配置页
  3. 选择进入Debugger配置页
    Debugger:
    选择gdbserver Debugger
    Debugger Options: 
    GDB Debugger 这项,如果上一篇中编译出的的arm-linux-gdb拷贝到PATH的目录,或者将arm-linux-gdb的目录加入到PATH,那么这里直接填arm-linux-gdb就可以了,否则浏览目录选择带路径的命令Shared Libraries这项,可以添加库路径,比如调试过程中要步入外部函数,就必须在这里给出带调试信息的库文件路径,否则会找不到该函数的定义

    Connection这项是关键:Type选 TCP,Host name or IP address填arm端的ip,端口号默认即可,这个端口号将在arm端运行gdbserver时填写
  4. 所有配置完成,点Apple 再关掉配置页

开始调试

    1. 在arm端运行程序
      # tftp -g -r ipcam 192.168.1.100
      # gdbserver 192.168.1.100:10000 ipcam

      192.168.1.100是主机ip 10000是之前设定的端口

    2. 在Eclipse开始调试
相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
目录
相关文章
|
7月前
|
Java Android开发
eclipse开发和运行Java程序
eclipse开发和运行Java程序
47 0
|
Linux 编译器 Windows
6818开发板(arm平台)利用SecureCRT连接主机并运行程序(99乘法表)
6818开发板(arm平台)利用SecureCRT连接主机并运行程序(99乘法表)
327 0
|
芯片 内存技术
基于ARM Cortex-M0+内核的bootloader程序升级原理及代码解析
基于ARM Cortex-M0+内核的bootloader程序升级原理及代码解析
|
Android开发
错误: 程序包org.eclipse.swt.graphics不存在/swt.jar下载方法
错误: 程序包org.eclipse.swt.graphics不存在/swt.jar下载方法
79 0
|
Java 程序员 Android开发
Eclipse 答疑:为什么在 Eclipse 中,运行本程序却是另外一个程序的结果?
Eclipse 答疑:为什么在 Eclipse 中,运行本程序却是另外一个程序的结果?
266 0
Eclipse 答疑:为什么在 Eclipse 中,运行本程序却是另外一个程序的结果?
|
Java Android开发 C语言
Java——在Eclipse集成开发环境下,创建并运行一个Java程序(hello world!!!)
Java——在Eclipse集成开发环境下,创建并运行一个Java程序(hello world!!!)
Java——在Eclipse集成开发环境下,创建并运行一个Java程序(hello world!!!)
|
Java Android开发
编写Java程序,使用 Java 的 I/O 流将 H:\eclipse.zip 文件拷贝至 E 盘下,重新命名为 eclipse 安装 .zip。
编写Java程序,使用 Java 的 I/O 流将 H:\eclipse.zip 文件拷贝至 E 盘下,重新命名为 eclipse 安装 .zip。
133 0
编写Java程序,使用 Java 的 I/O 流将 H:\eclipse.zip 文件拷贝至 E 盘下,重新命名为 eclipse 安装 .zip。
|
Java 数据库 Android开发
用Eclipse调试Java程序的一些小技巧
用Eclipse调试Java程序的一些小技巧
用Eclipse调试Java程序的一些小技巧
|
Java 应用服务中间件 Maven
Eclipse 部署应用程序到阿里云 EDAS
在之前的一篇文章中,我们介绍了 如何将一个本地的 Java 应用程序直接部署到阿里云 ECS ,有不少读者反馈,如果目前已经在使用阿里云 EDAS 了,那该如何配合这个插件部署应用呢?在本文中,我们来介绍 部署 Java 应用程序到阿里云 EDAS。
3800 0
|
Android开发
Eclipse插件开发_学习_01_Maven+Tycho 构建RCP程序
  二、参考资料 1.用Tycho来构建你的RCP程序(一) —— Plugin
1949 0