linux下用eclipse + GDBserver + JLINK 在线调试(ARM11)
(一)环境:
目标版:TINY6410
OS:centOS6.5
IDE:eclipse luna
CDT:v8.3
GDB:V7.5
(二)环境监理
1、安装cenntos:参考其他相关文章,这里重点是JLINK操作。
2、安装eclipse:下载 http://www.eclipse.org/downloads/
3、安装CDT:下载 http://www.eclipse.org/cdt/downloads.php 安装(参考官方的手册:http://help.eclipse.org/luna/index.jsp?topic=//org.eclipse.platform.doc.user/tasks/tasks-127.htm)
4、安装GDBSERVER:下载ftp://ftp.gnu.org/gnu/gdb/,这里版本非常多,我个人的原则是安装最新发布版本的前1版或前两版,我的理由很简单:最新版可能不是很稳定需要时间检验,版本太陈旧一些后续补丁和功能不全或存在历史的缺陷。
下载完Gdbserver后,
解压:tar zxvf gdb-7.5.tar.gz。这个命令再次就不详细记录了。
安装:./configure --target=arm-linux --prefix=/usr/local/arm/bin/ -v
make
make ckeck(可以省略)
make install
描述:。/configure参数--target制定了目标类型,相应的参数可以参看GNU官方文档,或者源文件下面的readme文件,可以获取相关的参数化。
5、arm-linux-gdb环境变量配置:可以把arm-linux-gdb 的PATH写在root/.bashrc中或者写在/etc/profile中,source /root/.bashrc 或source /etc/profile是新配置的PATH环境变量生效。
注意:如果安装过arm的交叉工具链并且配置和环境变量,那么这arm-linux-gdb的PATH环境变量必须写在arm的交叉工具链前面,因为arm的工具链中也有arm-linux-gdb,这里我们的目的是用自己的arm-linux-gdb server 。
6、安装JILINK for linux 工具包:
下载:http://www.segger.com/jlink-software.html。在官方找到相应的 J-Link software & documentation pack for Linux,下载源码。
解压:tar -zxvf JLink_Linux_V434a.tgz
配置:
mv libjlinkarm.so.4 /usr/lib
mv libjlinkarm.so.4.34.1 /usr/lib
cp 45-jlink.rules /etc/udev/rules.d
测试:连接开发板
把USB设备SEGGER JLINK 接入虚拟机中,在右下角图标,右键连接
./JLinkGDBServer (在JLinkGDBserver的目录下,可以写入环境变量中)
如果成功将提示arm的信息,在我的电脑上显示:
./JLinkGDBServer
SEGGER J-Link GDB Server V4.34a
JLinkARM.dll V4.34a (DLL compiled Aug 31 2011 11:51:40)
Listening on TCP/IP port 2331
J-Link connected
Firmware: J-Link ARM V8 compiled Nov 14 2012 22:34:52
Hardware: V8.00
S/N: 17935099
Feature(s): RDI,FlashDL,FlashBP,JFlash
J-Link found 2 JTAG devices, Total IRLen = 5
JTAG ID: 0x07B76F0F (ARM11)
7 eclipse中安装Embedded CDT工具()
打开eclpse:help/install new software
在Work with 中输入:http://opensource.zylin.com/zylincdt/
单击add输入zylin确定。
列表中选择:ZllinEmbeddedCDT
开始一步步安装,安装后重新启动。
上面的源码路径可能会变,需要到官方去查找最新的发行路径:http://opensource.zylin.com/embeddedcdt.html
8 调试:
打开一个arm工程,倒入eclipse,这些不是这里的重点,从略。网上有很多资料参考。这里重点如何调试。
编译好工程后,点击run/debug Configuration
双击Zylin Embedded debug
1在main窗口:配置要调试的程序。格式是elf的文件。
2debug窗口:Debugger栏中选择-〉Emdedded GBD,子窗口main中的GDB debug栏中点击Browse..选择arm-llinux-gdb路径。
3Commands窗口:输入初始化命令,这个命令来源还没有搞清楚,现在用的是别人的,后面的会专门写一遍笔记记录这里初始化命令是如何编写的。
4其他默认。点击apply,closed关闭窗口。
5启动调试。单击窗口工具栏上的瓢虫图标启动。当鼠标移到图标上后会显示我们刚刚新建立的debug conguation名称,比如Debug 项目名,提示错误的环,单击图标旁的箭头,选择刚刚配置的名称。
6 使用调试命令调试。
上面仅限于我的环境。
理论基于:国嵌网络课程
参考文章:http://blog.chinaunix.net/uid-12461657-id-3336153.html
linux下用eclipse + GDBserver + JLINK 在线调试(ARM11)的更多相关文章
- Linux下使用Eclipse开发Hadoop应用程序
在前面一篇文章中介绍了如果在完全分布式的环境下搭建Hadoop0.20.2,现在就再利用这个环境完成开发. 首先用hadoop这个用户登录linux系统(hadoop用户在前面一篇文章中创建的),然后 ...
- 在Linux下安装eclipse
在Linux下安装eclipse 今天上午终于在Linux下把eclipse安装上去了,前几天尝试了一次,失败了,不知道是软件版本的问题还是我自己的原因,估计还是我自己的原因占多数!下面把这次成功的经 ...
- 一次失败的尝试hdfs的java客户端编写(在linux下使用eclipse)
一次失败的尝试hdfs的java客户端编写(在linux下使用eclipse) 给centOS安装图形界面 GNOME桌面环境 https://blog.csdn.net/wh211212/artic ...
- Linux下, Eclipse C/C++ IDE下编辑好C/C++源程序之后要先保存!!!否则,就会……
注意:Linux下, Eclipse C/C++ IDE下编辑好C/C++源程序之后要先保存! ! ! 然后Project-->Build All/Build Project,再点绿箭头执行.否 ...
- linux下使用eclipse打开esp32工程文件,并进行编译下载。
在之前的文章中,已经讲过将esp-idf 运用linux自带的工具下载,但是为了开发的系统性,这里运用eclipse来对idf进行整体的编译. 首先 cd /esp32 运行eclipse,将work ...
- Linux 下 JDK + Eclipse + PyDev 安装与配置
一:JDK / JRE 环境 Eclipse 是运行于Java虚拟机中的,所以必须先安装Java环境才能进行开发测试.JRE(Java Runtime Environment)是运行环境,JDK(Ja ...
- Linux下的eclipse的安装
其实在linux里配好java环境后,就已经好了. 从官网下一个eclipse,解压后,就可以直接执行eclipse了,实在是不知道什么是安装. 其实在配置java时,也是一样. 可见在linux下, ...
- 让linux下的eclipse支持GBK编码
原文链接:http://leaze.blog.51cto.com/83088/195584 今天,把windows下的工程导入到了Linux下eclipse中,由于以前的工程代码,都是GBK编码的,而 ...
- linux下配置eclipse环境
注明:本文为博主原创文章,转载请注明出处 前期准备 (此文使用的是非安装版jdk1.8,你也可以下载版本更低的,而且建议使用1.6版本,66大顺嘛,嘻嘻) 1.点击下载jdk 2.点击下载eclips ...
随机推荐
- Xcode7 模拟器安装app (转)
本文转自同事zz的博客http://archerzz.cn/ios/xcode-install-app.html 原由 很多时候,为了学习了解别人的app,很多时候我们是直接拿别人的app安装在自己的 ...
- DataTable转换为Json字符串的三种方法
//第一种:使用StringBuilder public string DataTableToJson(DataTable table) { var JsonString = new StringB ...
- C语言程序设计进阶 第1周编程题
第1周编程题 查看帮助 返回 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数 ...
- Python_Day9_Socket编程
本节内容: Socket语法及相关 SocketServer实现多并发 socket概念 socket本质上就是在2台网络互通的电脑之间,架设一个通道,两台电脑通过这个通道来实现数据的互相传递. 我们 ...
- swagger for c# webapi
最近迷上了前后端分离的开发架构,工作中的项目几乎都采取这种模式,自己主要担任服务端RestFul风格的Webapi开发.那么问题来了,当前端开发人员找我要api说明文档的时候,曾一度非常可耻的冒出过w ...
- Evolutionary Computing: [reading notes]On the Life-Long Learning Capabilities of a NELLI*: A Hyper-Heuristic Optimisation System
resource: On the Life-Long Learning Capabilities of a NELLI*: A Hyper-Heuristic Optimisation System ...
- zookeeper 应用
一,启动一个zk客户端 zookeeper/bin/zkCli.sh ls / 查看根目录下所有节点 create /znode data 创建节点znode,并添加数据内容为data ls /z ...
- MySQL 日期时间相关函数整理
-- 为日期增加一个时间间隔:date_add() SELECT NOW(); YEAR); MONTH); DAY); HOUR); MINUTE); SECOND); MICROSECOND); ...
- spring 声明式事务管理
简单理解事务: 比如你去ATM机取5000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉5000元钱:然后ATM出5000元钱.这两个步骤必须是要么都执行要么都不执行.如果银行卡扣除了5000块但 ...
- TableView与delegate、dataResource
小梦这几天学习tableView是深有体会了 废话不多说,来一波 首先,创建一个测试项目 如图 创建好,在项目结构中另外弄一个GroupFile,创建storyBoard和CocoaTouch 在st ...