ubuntu18.04安装openocd服务器独立进行gdb调试--Apple的学习笔记
  2Nv1H5BMjysw 2023年11月05日 40 0

一,前言

之前win10的openocd由于没添加load elf导致无法调试,所以我就在ubuntu中也装了openocd环境,这样就不用依靠win10了。ubntu14.04无法编译openocd,所以换成ubuntu18.04安装openocd。

二,ubuntu18.04安装openocd及gdb调试

1,下载

git clone git://git.code.sf.net/p/openocd/code openocd

2,安装

sudo apt-get install build-essential pkg-config autoconf automake libtool libusb-dev libusb-1.0-0-dev libhidapi-dev libtool libsysfs-dev texinfo

编译安装

cd openocd    #进入目录
./bootstrap     #生成引导环境
./configure     #生成配置如下图所示

make  
make install

openocd -v

3,libusb新版本安装,因为ubuntu18.04中libusb比1.0.22低。 前提

sudo apt-get install autoconf automake libtool
sudo apt install -y libudev-dev

进入安装目录,执行

sh autogen.sh
make
sudo make install

先删除原来的老版本sudo apt-get --purge remove libusb-1.0-0-dev

然后把自己编译的1.0.26版本copy到64bit的lib库路径/usr/lib/x86_64-linux-gnu/下面

cp libusb* /usr/lib/x86_64-linux-gnu/

头文件按原来删除前的样子再创建下 mkdir /usr/include/libusb-1.0/ 然后copy源码中的libusb.h到此文件夹即可

4,安装stlink驱动

# 前提
apt install git make cmake libusb-1.0-0-dev gcc build-essential -y
git clone https://github.com/stlink-org/stlink

cd stlink-develop
cmake . 
make 
make install
ldconfig

将 ST-Link 设备插入 USB 端口,但不要连接目标板,然后键入

lsusb

看到如下信息

Bus 002 Device 004: ID 0483:3748 STMicroelectronics ST-LINK/V2

也可以继续看信息

st-info --probe

三,openocd调试方法

先打开一个控制台作为gdbserver,输入命令

openocd -f /usr/local/share/openocd/scripts/interface/stlink.cfg -f /usr/local/share/openocd/scripts/target/stm32f4x.cfg

再打开一个控制台,作为客户端

arm-none-eabi-gdb -ex "target remote localhost:3333" LED.elf
连接成功后
load LED.elf
然后就可以输入gdb常用命令调试了

和我上一篇文章win10中连接openocd调试效果一样。

四,小结

ubuntu安装openocd服务器其实没什么用,而且还很麻烦,但是既然我尝试了,且过程中自己解决了libusb编译报错,版本升级的问题,这种库升级的方法论是通用的。也算学习到了一招,所以有必要记录。另外将来万一PC环境仅有ubuntu,那么这些步骤记录就起到作用了,毕竟花费了大半天时间,说不定有人要参考,但是我自己其实用不上的,因为openocd安装在win10即可连接ubuntu客户端了,哈哈~

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
2Nv1H5BMjysw