通过gr-modtool在gnuradio中编写自己的C++模块

简介:
虽然gnuradio给我们提供了近百种常用的功能模块block,但是在我们自己的系统设计中,需要不同的模块完成特定的功能,这样就需要我们自己来编写C++源代码,生成新的block以供系统调用。如果源代码、编译文件都要自己编写,需要很强的专业知识。利用模板写模块gnuradio3.7用的都是gr_modtool

在终端进入主文件夹,输入: $gr_modtool newmod howto(这里以howto为例),主文件夹下就生成一个gr-howto文件夹

接下来就是添加要编写的模块。先进入刚才生成的gr-howto文件夹,在终端输入

$gr_modtool add -t general square

下面选项选择默认

接下来就是编写C++代码:进入lib文件夹,修改square_impl.cc文件(由于例子比较简单两个头文件都不需要修改)

编写完.cc文件后,进入gr-howto文件夹,新建文件夹:$mkdir build

进入build文件夹:$cd build

编译:$cmake ../

           $ make

使模块可以在GRC中使用:在gr-howto目录下输入$gr_modtool makexml square,选择Y

安装模块:进入build目录,$sudo make install

ubuntu可能要整理一下依赖关系:$sudo ldconfig

完成


 

目录
相关文章
|
4月前
|
安全 数据处理 C++
GNU Radio之OFDM Carrier Allocator底层C++实现
GNU Radio之OFDM Carrier Allocator底层C++实现
95 1
GNU Radio之OFDM Carrier Allocator底层C++实现
|
2月前
|
NoSQL API Redis
c++开发redis module问题之为什么在使用RedisModule_GetApi之前要通过((void**)ctx)[0]这种方式获取其地址
c++开发redis module问题之为什么在使用RedisModule_GetApi之前要通过((void**)ctx)[0]这种方式获取其地址
|
2月前
|
NoSQL 编译器 Redis
c++开发redis module问题之如果Redis加载了多个C++编写的模块,并且它们都重载了operator new,会有什么影响
c++开发redis module问题之如果Redis加载了多个C++编写的模块,并且它们都重载了operator new,会有什么影响
|
2月前
|
NoSQL Redis C++
c++开发redis module问题之在复杂的Redis模块中,特别是使用第三方库或C++开发时,接管内存统计有哪些困难
c++开发redis module问题之在复杂的Redis模块中,特别是使用第三方库或C++开发时,接管内存统计有哪些困难
|
2月前
|
NoSQL Redis C++
c++开发redis module问题之避免多个C++模块之间因重载operator new而产生的冲突,如何解决
c++开发redis module问题之避免多个C++模块之间因重载operator new而产生的冲突,如何解决
|
3月前
|
编译器 vr&ar C++
c++primer plus 6 读书笔记 第七章 函数--C++的编程模块
c++primer plus 6 读书笔记 第七章 函数--C++的编程模块
|
3月前
|
程序员 编译器 C++
探索C++语言宝库:解锁基础知识与实用技能(类型变量+条件循环+函数模块+OOP+异常处理)
探索C++语言宝库:解锁基础知识与实用技能(类型变量+条件循环+函数模块+OOP+异常处理)
33 0
|
3月前
|
监控 C++
c++实战篇(二)——基于自旋锁实现的日志服务模块
c++实战篇(二)——基于自旋锁实现的日志服务模块
|
4月前
|
监控 C++
C++ Qt开发:QProcess进程管理模块
Qt是一个跨平台的C++图形库,简化了窗体应用开发,支持通过拖放组件提升效率。本章节关注`QProcess`组件,它用于控制和管理进程,例如执行命令、运行可执行文件及与外部进程通信。`QProcess`提供多种方法如`start`、`waitForStarted`和`waitForFinished`等,实现启动、监控和交互。示例展示了如何使用`QProcess`获取系统进程和信息,通过`tasklist`和`systeminfo`命令,并将结果展示在`QTreeWidget`中。
129 0
C++ Qt开发:QProcess进程管理模块
|
4月前
|
存储 算法 程序员
【C/C++ 随机数】深入探索C++随机数生成,random 模块的应用
【C/C++ 随机数】深入探索C++随机数生成,random 模块的应用
206 0