gpt4 book ai didi

python - 如何将用 C++ 编写的函数 ("noblock") 导入 GRC

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:47:31 24 4
gpt4 key购买 nike

在我的 OOT 模块中,我编写了一个函数作为“noblock”类型,我想在 GRC 中导入它。

编译过程和安装进行得很顺利,我可以使用我在 python 中使用 import my_module as mmmm.my_python_function() 编写的函数。

但这不适用于 C++ 中的那个,我有错误消息:

Param - Value(value): Value "my_module.my_cpp_function()" cannot be evaluated: 'module' object has no attribute 'my_cpp_function'

请问我缺少什么?这与 swig 有什么关系吗?如何设置?谢谢。

注意:我正在运行 Ubuntu 14.04 并且 GRC 已使用 PyBombs 安装并带有 prefix =/usr/local

最佳答案

听起来您很接近并且 swig 设置正确。在过去的两天里,我一直在与此作斗争,并提出了一种我认为模仿 gr-digital 所做的方法。但是,在我详细说明之前,您是否尝试过向 GRC 添加一个“导入” block ,然后输入“导入 my_module”作为其“导入”?

我假设是这样,因为您能够在 python 中导入和使用该模块。

你是否创建了类似 swig/my_module.i 的东西?按照 gr-digital/swig/packet_header.i 作为模板。然后确保 swig/CMakeLists.txt 在最后的 install() 语句中包含 my_module.i ;再次查看 gr-digital/swig/CMakeLists.txt 以获取指导。

最后,确保你的 swig/_swig.i 包括

#include "<module_name>/my_module.h"

以后

%include "<module_name>/my_module.h"

文件末尾

%include "my_module.i"

同样,请参阅 gr-digital/swig/digital_swig.i 以获取使用 packet_header 的示例。

关于python - 如何将用 C++ 编写的函数 ("noblock") 导入 GRC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35757232/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com