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 ...
随机推荐
- an interview question(2)
感觉现在好多面试题还是很注重基础的,今天面试时就遇到这题,回来一查后才知道此题是国内某著名通信公司的一道机试题:) 给定一个数组input[ ],如果数组长度n为奇数,则将数组中最大的元素放到 out ...
- Sublime Text3 快捷键
选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本. Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑.举个栗子:快速选中并更改所有相同的变量名.函数 ...
- linux下可执行程序的装载和启动
张雨梅 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-10000 1.c文件的编译 图中显示了c ...
- Java学习--内部类(一)
Java学习--内部类(一) 一. 内部类的定义和特点 class Outer{ privite int num = 5; class Inner{ public void Display(){ Sy ...
- weex 小结 -- <list>
可以包含各种子组件 <refresh style="width:750;padding:30;flex-direction:row;justify-content:center;&qu ...
- JSONObject,JSONArray,Map,String之间转换
http://blog.csdn.net/superit401/article/details/51727739 1.String转JSONObject String jsonMessage = &q ...
- 什么是UART中的FIFO
FIFO是先进先出缓冲区的意思,即串口接收到的数据可以先进入FIFO,不必马上进入中断服务程序接收,这样可以节省CPU时间.对于发送数据也一样可以把要发送的数据一起写入FIFO,串口控制器按照写入的顺 ...
- WPF进度条系列②旋转小圆圈
写在之前: 关于WPF的样式,我也是学习了很多朋友的文章才有了下面的东西,因为时间有些久远 & 备份的链接也都不在了. 所以,究竟是看过哪些文章,也是记不清楚了…… 请见谅. ------- ...
- java通过文件路径读取该路径下的所有文件并将其放入list中
java通过文件路径读取该路径下的所有文件并将其放入list中 java中可以通过递归的方式获取指定路径下的所有文件并将其放入List集合中.假设指定路径为path,目标集合为fileList,遍 ...
- c# 打乱数组
有时候得到了一个List,我想把它随机排列一下顺序.而且如果针对不同类型的List都能用,就要用到泛型. 其实思想很简单,就是从原List中每次随机取一项,添加到新的List中,并在原List中删除. ...