OpenOCD在虚拟机中的使用

OpenOCD在虚拟机中的使用


问题


在Vmware的ESXI虚拟机中使用OpenOCD的时候,一直提示找不到STM32的仿真器。

在系统硬件中可以看到连接的USB设备。

OpenOCD已经是最新版本20200310

原因


经过查找后,确定原因是OpenOCD使用的libusb不能透过非libusb驱动的hub(恰好这是vmware实现USB映射的方法)找到此hub之下的libusb设备。

补充一个链接

解决方法


经测试,最新版本的libusb已经支持了在hub下的设备遍历。测试方法就是下载最新版本的libusb并执行遍历的测试,可以看到设备。显然旧版本的看不到。

确定办法就是重新编译最新版本的OpenOCD,并且替换为最新版本的libusb。(注意要先用cygwin安装libusb,然后替换libusb)

编译步骤(参考此处):

但是注意到编译过程中可能出现一些错误,原因是windows下这个cygwin编译器和makefile不匹配,在Makefile里找到-Wxxxx关闭就可以了。

当然由于目录设置的问题,OpenOCD要放在C盘根目录下,还要调整编译选项:C:\OpenOCD。

说了这么多,太麻烦了。

1
2
3
链接:https://pan.baidu.com/s/11m8PbTbFTZYaSNV9kcsD6g 
提取码:na3f
复制这段内容后打开百度网盘手机App,操作更方便哦

Комментарии

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×