1

我正在尝试复制 GNURadio 的 UHD 模块中包含的 USRP Source 块,以便我可以自由修改该work()功能。

目前,我只是想制作一个与“USRP Source”块完全一样的块。我创建了一个名为“asat”的新模块,创建了.cc.h.xmlCMakeLists__init__文件,并让整个东西编译和安装没有错误。

但是,当我尝试运行 GRC .py 文件时,出现以下错误:

File "/usr/local/lib/python2.7/dist-packages/asat/__init__.py", line 128, in <module> _prepare_asat_swig()
File "/usr/local/lib/python2.7/dist-packages/asat/__init__.py", line 32, in _prepare_asat_swig import asat_swig
File "/usr/local/lib/python2.7/dist-packages/asat/asat_swig.py", line 26, in <module> _asat_swig = swig_import_helper()
File "/usr/local/lib/python2.7/dist-packages/asat/asat_swig.py", line 22, in swig_import_helper _mod = imp.load_module('_asat_swig', fp, pathname, description)
ImportError: /usr/local/lib/python2.7/dist-packages/asat/_asat_swig.so: undefined symbol: /ZTIN3uhd9key_errorE

我一直在努力解决这个错误,从我的谷歌搜索中我怀疑这是一个库在 CMAKE 中没有正确链接的问题,但我是 SWIG/CMAKE 的新手,我似乎无法解决它.

如果我在图书馆的正确轨道上,即使有人可以建议链接到的图书馆,我也非常感谢任何帮助解决错误原因的帮助。

我已经用我的源代码创建了一个 github 存储库,并为任何愿意帮助我的人构建目录。

4

1 回答 1

0

乔尔 -

您需要为您的新块创建一个 SWIG 文件,以便它将 SWIG 转换为 Python - 否则,您将无法从 GRC 生成的 Python 流程图中使用它。

GNURadio 源代码树中有很多 *.i SWIG 文件可供您查看。或者,我建议您在 gnuradio-discuss 邮件列表中询问,几乎所有 GNURadio 支持都在该列表中进行(我是唯一一个知道监视 SO 的人):

https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

干杯,

于 2012-11-27T01:04:45.580 回答