文章目录
- OpenOCD简介
- OpenOCD软件模块
- OpenOCD源码下载
- OpenOCD安装
OpenOCD简介
OpenOCD(Open On-Chip Debugger)开放式片上调试器
OpenOCD官网 https://openocd.org/,进入官网点击 About 可以看到OpenOCD最初的设计是由国外一个叫Dominic Rath的学生在毕设上提出来针对ARM7和ARM9芯片的片上调试
OpenOCD主要提供针对嵌入式设备的调试、系统编程和边界扫描功能。它需要与仿真器配合使用,仿真器是一种能够提供调试目标电信号的小型硬件单元,这是因为调试主机(即运行OpenOCD的主机)通常不具备这种电信号的直接输出能力
在实际应用中,例如在使用Clion进行嵌入式开发时,可以与OpenOCD进行集成,以方便在Clion中进行调试和烧录操作。此外,OpenOCD还支持一种称为Semihosting的功能,即利用OpenOCD(Debug-Module)可以直接访问CPU上的memory来达到数据吞吐的目的
OpenOCD软件模块
OpenOCD官网打开Dominic Rath的论文在其50也可以看到最初设计架构中的软件模块组成
OpenOCD源码下载
官网上面也提供源码下载,选择Git源码仓库链接进入Git仓库(此处有坑,先看完这一小节再操作)
直接拷贝git指令在ubuntu中进行源码拷贝
git仓库源码拷贝,拷贝完成后在路径下将多出来一个 openocd-code
文件夹
源码下载后就是执行 ./configure
指令进行OpenOCD配置,但是 ls -l
后的文件中就是没有 configure
文件,这就很尴尬了
第二种源码下载方式,Windows下载OpenOCD源码压缩包,在OpenOCD远程仓库选择 Summary → Download
下载压缩包到Windows
再通过share文件夹放进Ubuntu,解压后打开 openocd-0.12.0 文件夹,目前最新版本的OpenOCD为0.12.0,可看到文件夹下有 configure
文件
OpenOCD安装
终端打开OpenOCD路径下,运行指令 ./configure
,后面加上调试器类型,这里用的调试器是J-Link,等待OpenOCD进行配置
配置完成后可以看到OpenOCD的当前配置表
下一步,make编译,没装make的需要先 sudo apt-get install make -y
一下,编译可能会出现以下报错
报错原因是缺失pkg-config包,sudo apt-get install pkg-config -y
安装
完成后make,正常的话会蹦出来另一个报错,LIBTOOL未定义
安装libtool, sudo apt-get install libtool -y
安装完成过后继续make,发现还是一样的报错内容,安装报错提示打开文件 configure.ac,查找是否定义了 LT_INIT
如有对应定义,那就终端直接运行 aclocal
和 autoconf
,再make,正常会开启几分钟左右的编译
sudo make install
进行软件安装
安装完成后,运行 openocd -V
指令查询OpenOCD是否安装成功,成功安装会再终端输出OpenOCD版本信息,如图