解决GNURadio自定义Python OOT块-导入块时报错问题

简介: 解决GNURadio自定义Python OOT块-导入块时报错问题

前言

本文记录在 GNURadio 自定义Python OOT 块后导入块时报错 ModuleNotFoundError: No module named xxx


一、问题描述

参考官方教程 Creating Python OOT with gr-modtool 创建自定义的 OOT块(OOT 模块是不存在于 GNU Radio 源代码树中的 GNU Radio 组件。全拼:Out-Of-Tree),运行时出现了如下报错:

Traceback (most recent call last):

File “/home/gnep/GNURadio_test/ofdm/test.py”, line 36, in

import customModule

ModuleNotFoundError: No module named ‘customModule’

二、解决方法

1、卸载已安装的 OOT 块

cd /home/gnep/gr-customModule/build
sudo make uninstall

2、重新编译及安装

将官方教程 cmake .. 中的第3个命令替换为 cmake -DCMAKE_INSTALL_PREFIX=$(gnuradio-config-info --prefix) ..

cd /home/gnep/gr-customModule/build
cmake -DCMAKE_INSTALL_PREFIX=$(gnuradio-config-info --prefix) .. 
make
sudo make install
sudo ldconfig 

单独删除某一个模块命令(在 gr-customModule 目录下执行):gr_modtool rm 模块名

3、重新测试

打开 gnuradio

gnuradio-companion &

再次运行,已无报错

目录
打赏
0
0
0
0
45
分享
相关文章
|
1月前
|
[oeasy]python072_名字空间是怎么玩的_from_import_as_导入_namespace
本文介绍了Python中名字空间和模块导入的使用方法。主要内容包括: 1. **回忆上次内容**:回顾了之前导入系统模块(如`__hello__`、`time`)和自定义模块(如`my_file`),并介绍了如何导入和使用模块中的变量。 2. **从shell开始**:展示了如何在命令行中编辑和切换文件,以及如何通过`import`语句引入模块。 3. **修改oeasy.py**:演示了如何通过`import my_file`导入模块,并将模块中的`pi`赋值给本地变量`pi`。 4. **locals()函数**:解释了如何使用`locals()`查看当前作用域内的本地变量及其值。
36 8
[oeasy]python070_如何导入模块_导入模块的作用_hello_dunder_双下划线
本文介绍了如何在Python中导入模块及其作用,重点讲解了`__hello__`模块的导入与使用。通过`import`命令可以将外部模块引入当前环境,增强代码功能。例如,导入`__hello__`模块后可输出“Hello world!”。此外,还演示了如何使用`help()`和`dir()`函数查询模块信息,并展示了导入多个模块的方法。最后,通过一个实例,介绍了如何利用`jieba`、`WordCloud`和`matplotlib`模块生成词云图。总结来说,模块是封装好的功能部件,能够简化编程任务并提高效率。未来将探讨如何创建自定义模块。
42 8
[oeasy]python071_我可以自己做一个模块吗_自定义模块_引入模块_import_diy
本文介绍了 Python 中模块的导入与自定义模块的创建。首先,我们回忆了模块的概念,即封装好功能的部件,并通过导入 `__hello__` 模块实现了输出 "hello world!" 的功能。接着,尝试创建并编辑自己的模块 `my_file.py`,引入 `time` 模块以获取当前时间,并在其中添加自定义输出。
35 4
Python3 自定义排序详解:方法与示例
Python的排序功能强大且灵活,主要通过`sorted()`函数和列表的`sort()`方法实现。两者均支持`key`参数自定义排序规则。本文详细介绍了基础排序、按字符串长度或元组元素排序、降序排序、多条件排序及使用`lambda`表达式和`functools.cmp_to_key`进行复杂排序。通过示例展示了如何对简单数据类型、字典、类对象及复杂数据结构(如列车信息)进行排序。掌握这些技巧可以显著提升数据处理能力,为编程提供更强大的支持。
79 10
|
5月前
|
在Python中,自定义函数可以抛出自定义异常
在Python中,自定义函数可以抛出自定义异常
101 5
自定义Python的异常
自定义Python的异常
62 5
|
5月前
|
如何自定义Python环境变量?
如何自定义Python环境变量?
113 3
如何使用Python实现一个交易策略。主要步骤包括:导入所需库(如`pandas`、`numpy`、`matplotlib`)
本文介绍了如何使用Python实现一个交易策略。主要步骤包括:导入所需库(如`pandas`、`numpy`、`matplotlib`),加载历史数据,计算均线和其他技术指标,实现交易逻辑,记录和可视化交易结果。示例代码展示了如何根据均线交叉和价格条件进行开仓、止损和止盈操作。实际应用时需注意数据质量、交易成本和风险管理。
241 5
docker之自定义制作镜像(python程序)
docker之自定义制作镜像(python程序)
Python中的自定义进度条:从零开始
Python中的自定义进度条:从零开始

热门文章

最新文章