之前我们介绍过keil的安装,但是并没有使用keil去调试程序,主要原因是因为我们编写的makefile文件无法在keil中使用。而且,我们编写的start.S在keil中也会报个各种错误。但是作为一个程序员,调试程序是并不可少的。这节将带领大家学习如何在Linux上使用jlink调试Mini2440开发板。

一、ubuntu安装Jlink驱动

1.1 下载jlink

在JLink官网下载deb后缀,https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack:嵌入式Linux之Eclipse开发环境搭建教程

需要注意的是这里我没有下载最新的,我下载的版本是JLink\_Linux\_V616\_x86\_64.deb。

1.2、上传到linux服务器

下载完成之后,利用samba服务器上传至linux服务器。


嵌入式Linux之Eclipse开发环境搭建教程

1.3、安装程序

在ubuntu可视化界面上,利用命令安装:

dpkg -i JLink_Linux_V616_x86_64.deb

嵌入式Linux之Eclipse开发环境搭建教程

安装好jlink驱动以后,默认是安装在/opt/SEGGER/Jlink下面.

在虚拟机上面,把jlink连接到虚拟机里面:

嵌入式Linux之Eclipse开发环境搭建教程

然后运行JLinkExe程序,如果看到JLInk连接的相关信息,说明安装驱动成功:

cd /opt/SEGGER/JLink
JLinkExe

嵌入式Linux之Eclipse开发环境搭建教程

二、安装Eclipse IDE

2.1 安装jdk

JDK的安装我就不介绍了,相信大家都很熟了,看我这篇博客:大数据 -- Hadoop集群环境搭建

嵌入式Linux之Eclipse开发环境搭建教程

嵌入式Linux之Eclipse开发环境搭建教程

嵌入式Linux之Eclipse开发环境搭建教程

2.2 安装eclipse

官网下载eclipse,注意需要下载Linux版本:

嵌入式Linux之Eclipse开发环境搭建教程

解压就好了:

mv eclipse-jee-2021-06-R-linux-gtk-x86_64.tar.gz /usr/lib
cd /usr/lib
tar -zvxf eclipse-cpp-2018-09-linux-gtk-x86_64.tar.gz

2.3 运行eclipse

登录ubuntu,通过可视化页面终端运行:

cd /usr/lib/eclipse
./eclipse 

此时可能会出现jre相关的error,进入eclipse安装路径 ,加入jdk bin的路径,创建jre文件夹:

mkdir jre
cd jre
#创建jdk链接:
ln -s /usr/java/jdk1.8.0_231/bin bin

2.4 eclipse安装Zylin Embedded CDT

去官网下载CDT,注意需要下载eclipse对应版本,这里我下载的9.55版本:

嵌入式Linux之Eclipse开发环境搭建教程

 tar -zxvf org.eclipse.cdt-3.1.2-linux.x86.tar.gz

解压后将features和plugins文件夹下的所有文件拷贝到/usr/lib/eclipse下对应的目录下即可。

2.5 配置编译器

新建一个项目,file -> new ->C/C++ project :

嵌入式Linux之Eclipse开发环境搭建教程

嵌入式Linux之Eclipse开发环境搭建教程

选择C Managed Build,然后点击Next,填写项目名称,选择Crosee GCC:

嵌入式Linux之Eclipse开发环境搭建教程

然后一直Next直至安装完成。

在左侧项目栏右击项目名称 ->选择properties,在C/C++build-->Settingss里,把Tool Settings中的command都改成gcc、as改成arm-linux-gcc,arm-linux-as,改完后编译一下:

嵌入式Linux之Eclipse开发环境搭建教程

2.6 配置编译arm gdb

下载gdb gdb下载 ,版本选择7.2a(gdb-7.12.1.tar.gz):

wget http://ftp.gnu.org/gnu/gdb/gdb-7.12.1.tar.gz

解压缩:

tar -zxvf gdb-7.12.1.tar.gz

配置:

cd gdb-7.2/
./configure --target=arm-linux --program-prefix=arm-linux- --prefix=/opt/gdb/

注:--target=arm-linux意思是说目标平台是运行于ARM体系结构的linux内核;--program-prefix=arm-linux-是指生成的可执行文件的前缀,比如arm-linux-gdb,--prefix是指生成的可执行文件安装在哪个目录,这个目录需要根据实际情况作选择。如果该目录不存在,会自动创建,当然,权限足够的话。

编译安装:

make
make install

幸运的话,会在--prefix指定的目录下生成三个子目录:bin、lib、share,我们需要的arm-linux-gdb就在其中的bin目录下。( 在/opt/gdb目录下呢)

三、调试

3.1 配置调试选项

  • 进入Run菜单 -> Debug Configurations -> Zylin Embedded debug(Native)
  • 新建一个调试配置;
  • 进入main选项卡,选择要调试的C/C++工程;
  • 进入debugger选项卡,选择交叉编译的gdb debugger:arm-linux-gdb;
  • 进入commands选项卡,在初始化命令里填写目标板的IP和端口,例如target remote 192.168.0.151:2345;ip是板子的ip

参考文章:

[1] 关于在Ubuntu安装JLink驱动的最简便方法

[2] 在s3c2440上用GDB调试linux内核

[3] eclipse linux驱动交叉调试环境的制作

[4]基于Deepin 搭建嵌入式开发环境 eclipse+arm-linux-gcc-4.3.2

标签: Linux, linux, tar, Eclipse, eclipse, 嵌入式, gdb, arm

相关文章推荐

添加新评论,含*的栏目为必填