1

语境:

我正在使用 GNU Radio 进行自定义块开发。我已经实现了一个名为trivial_adder_ii1 个int输入和 1 个int输出的简单块,它产生的值只是乘以 2。练习的重点是了解代码结构、工具和过程。

我曾经gr_modtool创建模块和块,更新了work方法trivial_adder_ii_impl.cc以产生预期的输出,并实现了一个通过的 python 单元测试。到目前为止,一切都很好。

问题:

我无法让我的新块显示在 GRC 块列表中。这就是我所做的(根据各种教程):

cd build
cmake ..
make
sudo make install
sudo ldconfig

我也创建了这个conf。再次提交具有以下内容的文件,如此此问题下所述:

$ cat ~/.gnuradio/config.conf 
[grc]
local_block_path=/usr/local/share/gnuradio/grc/blocks

我可以看到 XML 文件似乎已正确部署:

$ cat /usr/local/share/gnuradio/grc/blocks/testmodule_trivial_adder_ii.xml 
<?xml version="1.0"?>
<block>
  <name>trivial_adder_ii</name>
  <key>testmodule_trivial_adder_ii</key>
  <category>testmodule</category>
  <import>import testmodule</import>
  <make>testmodule.trivial_adder_ii()</make>
  <sink>
    <name>in</name>
    <type>int</type>
  </sink>

  <source>
    <name>out</name>
    <type>int</type>
  </source>
</block>

但是,无论是在部署模块 XML 后触发“重新加载块”还是重新启动 GRC,我的模块都不会出现在 GRC 中。我究竟做错了什么?

环境:Ubuntu 14.04.1、x86_64、GNU Radio Companion 3.7.2.1。

4

1 回答 1

2

它可能列在(未指定模块)类别中。例如,要将其显示在TestModule下,请将 XML 块定义更改为:

<category>[TestModule]</category>

更新:我在下面的评论中提供了正确答案:它是“块”(复数),而不是“块”。

于 2017-07-26T13:23:54.793 回答