从Docker运行GNU Radio流程图,使用Ettus B200 USRP和UHD



我正在尝试从Docker容器中运行GNU Radio流程图(无GUI(。主机和码头工人映像上的操作系统都是 Ubuntu 18.04。我正在运行GNU Radio v3.7.13.4和UHD v3.14.0.0。

在主机上,我可以运行grcc -e flowgraph.grc,它按预期执行。当我尝试在 Docker 容器中运行它时,它会报告

Validation failed:
Block - blocks_tagged_stream_multiply_length_0 - Tagged Stream Multiply Length Tag(blocks_tagged_stream_multiply_length):
Source - out(0):
Port is not connected.
Error during file compilation.

在主机和 Docker 容器中,uhd_find_devices返回:

[INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501; UHD_3.14.0.HEAD-0-g6875d061
--------------------------------------------------
-- UHD Device 0
--------------------------------------------------
Device Address:
serial: 30CF9B7
name: MyB210
product: B210
type: b200

因此,我似乎在主机和容器之间正确共享USB设备(尽管我怀疑问题与此有关

(。我正在运行容器:docker run -it -v /dev/bus/usb:/dev/bus/usb --privileged csradio:latest

有谁知道问题可能是什么?

编辑 1:添加了操作系统、GNU 和 UHD 版本详细信息。

查看您的 Dockerfile,上述错误的最可能原因是 UHD 块丢失,因为您在安装gnuradio后安装了uhd

解决方案是先构建并安装uhd然后构建gnuradio

相关内容

  • 没有找到相关文章

最新更新