如何在自定义 C++ OOT 中包含 GNU Radio 头文件

问题描述 投票:0回答:1

我正在编写一个 C++ OOT 模块。该模块需要以下头文件:

#包括

因此,我将此行添加到以下文件中:

(OOT 文件所在目录)/include/gnuradio//(blockname.h).

就我而言,这是:

(XYZ目录)/gr-QPSK_Modules_Decision_Directed_PLL/include/gnuradio/QPSK_Modules_Decision_Directed_PLL/Decision_Directed_PLL.h

在此之后,我之前的错误(关于丢失的头文件)消失了,但是我遇到了关于以下文件中丢失的头的新错误:

(XYZ目录)/gr-QPSK_Modules_Decision_Directed_PLL/python/QPSK_Modules_Decision_Directed_PLL/bindings/Decision_Directed_PLL_python.cc

在线:

#包括

注意:这是我在上一步中手动编辑的文件。

这让我怀疑手动编辑以前的文件可能不是包含头文件的正确方法。我可能错过了一些明显的东西,但我对这一切都很陌生,并且希望得到任何帮助。我似乎在 GNU Radio 文档或 wiki 页面中找不到任何显示如何添加头文件的示例。我使用 gr_modtool 来创建 C++ OOT 模块的结构。任何帮助将不胜感激,因为我不知道如何克服这个问题。

我尝试更换这一行:

#包括

使用该文件实际所在位置的绝对路径,但是当我尝试在 GRC 中使用我的块时,这会导致链接错误。

我正在使用以下版本的 GNU Radio Companion:

3.10.11.0(Python 3.8.19)

gnuradio gnuradio-companion
1个回答
0
投票

我设法通过修改头文件后运行以下命令来解决此问题: gr_modtool bind [blockname] 这会重新生成绑定,这似乎解决了我的问题。希望这对可能遇到类似问题的其他人有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.