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 ...
随机推荐
- windows php线程安全和不安全,两个版本我也看不懂,记下来再说。
Windows下的PHP版本分两种:线程安全版本与非线程安全版本. 要论两者的区别,详细论说起来比较麻烦,从使用者的角度,记住什么时候用哪种版本的区别就可以了吧: 1.windows + IIS + ...
- react 学习笔记
1.Router 1.1 Histories React Router 是建立在 history 之上的.一个 history 知道如何去监听浏览器地址栏的变化, 并解析这个 URL 转化为 loca ...
- js判断中文
var reg = /^[\u4E00-\u9FA5]+$/;if(!reg.test(keywordscn)){ alert('请填写中文') return false;}
- 冰球项目日志3-yjw
小组讨论 今天大家讨论了之前各自想的方案的问题,基本确定了寻找击球点的方案,以及击球手运动轨迹规划的方案,这里我只是简单的说下我们的击球点的确定方案. 击球策略方案 方案分析 首先我们建立平面在直角坐 ...
- 禁止手机页面中A标签长按弹出路径框
//禁止手机页面中A标签长按弹出路径框 window.onload=function(){ document.documentElement.style.webkitTouchCa ...
- 20145224&20145238 《信息安全系统设计基础》 第五次实验
20145224&20145238 <信息安全系统设计基础>第五次实验 课程:信息安全系统设计基础 班级:1452 姓名:陈颢文 荆玉茗 学号:20145224 20145238 ...
- Python学习笔记之抽象
一.创建函数 >>> import math >>> x=1 >>> y=math.sqrt >>> callable(x) # ...
- Java 中的 request 和response 区别
1.response 属于重定向请求: 其地址栏的URL会改变: 会向服务器发送两次请求: 2. request 属于请求转发: 其地址栏的URL不会改变: 向服务器发送一次请求: 举一个区分它们的简 ...
- C plus plus study note (one)
What is an object ? Object = Entity ; Object may be -- visible or -- invisible Object is variable in ...
- gulp详细入门教程-gulp demo download
简介: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她,我们不仅可以很愉快的编写代码 ...