質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1192閲覧

gr_modtoolで作った自作ブロックをgnuradioで使おうとしたら、'ModuleNotFoundError:No module named ' というエラーが出てしまう

yu_89

総合スコア34

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/04/25 08:28

解決したいこと

gr_modtoolで作った自作ブロックをgnuradioで使おうとしたら、'ModuleNotFoundError:No module named ' というエラーが出てしまいます。
調べて、export PYTHONPATH="/path/to/your/module/:${PYTHONPATH}"  等を試してみたのですが、解決しません。
何が原因なのでしょうか。

発生している問題・エラーメッセージ

>>> Done (return code 1) Executing: /usr/bin/python3 -u /home/your/gr-Kurtosis1/v.py Traceback (most recent call last): File "/home/your/gr-Kurtosis1/v.py", line 32, in <module> import Kurtosis1 ModuleNotFoundError: No module named 'Kurtosis1'

該当のgnuradioのソースコード

v.py

1#!/usr/bin/env python3 2# -*- coding: utf-8 -*- 3 4# 5# SPDX-License-Identifier: GPL-3.0 6# 7# GNU Radio Python Flow Graph 8# Title: Not titled yet 9# GNU Radio version: 3.8.1.0 10 11from distutils.version import StrictVersion 12 13if __name__ == '__main__': 14 import ctypes 15 import sys 16 if sys.platform.startswith('linux'): 17 try: 18 x11 = ctypes.cdll.LoadLibrary('libX11.so') 19 x11.XInitThreads() 20 except: 21 print("Warning: failed to XInitThreads()") 22 23from gnuradio import analog 24from gnuradio import gr 25from gnuradio.filter import firdes 26import sys 27import signal 28from PyQt5 import Qt 29from argparse import ArgumentParser 30from gnuradio.eng_arg import eng_float, intx 31from gnuradio import eng_notation 32import Kurtosis1 33from gnuradio import qtgui 34 35class v(gr.top_block, Qt.QWidget): 36 37 def __init__(self): 38 gr.top_block.__init__(self, "Not titled yet") 39 Qt.QWidget.__init__(self) 40 self.setWindowTitle("Not titled yet") 41 qtgui.util.check_set_qss() 42 try: 43 self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc')) 44 except: 45 pass 46 self.top_scroll_layout = Qt.QVBoxLayout() 47 self.setLayout(self.top_scroll_layout) 48 self.top_scroll = Qt.QScrollArea() 49 self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame) 50 self.top_scroll_layout.addWidget(self.top_scroll) 51 self.top_scroll.setWidgetResizable(True) 52 self.top_widget = Qt.QWidget() 53 self.top_scroll.setWidget(self.top_widget) 54 self.top_layout = Qt.QVBoxLayout(self.top_widget) 55 self.top_grid_layout = Qt.QGridLayout() 56 self.top_layout.addLayout(self.top_grid_layout) 57 58 self.settings = Qt.QSettings("GNU Radio", "v") 59 60 try: 61 if StrictVersion(Qt.qVersion()) < StrictVersion("5.0.0"): 62 self.restoreGeometry(self.settings.value("geometry").toByteArray()) 63 else: 64 self.restoreGeometry(self.settings.value("geometry")) 65 except: 66 pass 67 68 ################################################## 69 # Variables 70 ################################################## 71 self.samp_rate = samp_rate = 32000 72 73 ################################################## 74 # Blocks 75 ################################################## 76 self.analog_sig_source_x_0 = analog.sig_source_c(samp_rate, analog.GR_COS_WAVE, 1000, 1, 0, 0) 77 self.Kurtosis1_Kurtosis_c1_0 = Kurtosis1.Kurtosis_c1(1024) 78 79 80 81 ################################################## 82 # Connections 83 ################################################## 84 self.connect((self.analog_sig_source_x_0, 0), (self.Kurtosis1_Kurtosis_c1_0, 0)) 85 86 def closeEvent(self, event): 87 self.settings = Qt.QSettings("GNU Radio", "v") 88 self.settings.setValue("geometry", self.saveGeometry()) 89 event.accept() 90 91 def get_samp_rate(self): 92 return self.samp_rate 93 94 def set_samp_rate(self, samp_rate): 95 self.samp_rate = samp_rate 96 self.analog_sig_source_x_0.set_sampling_freq(self.samp_rate) 97 98 99 100def main(top_block_cls=v, options=None): 101 102 if StrictVersion("4.5.0") <= StrictVersion(Qt.qVersion()) < StrictVersion("5.0.0"): 103 style = gr.prefs().get_string('qtgui', 'style', 'raster') 104 Qt.QApplication.setGraphicsSystem(style) 105 qapp = Qt.QApplication(sys.argv) 106 107 tb = top_block_cls() 108 tb.start() 109 tb.show() 110 111 def sig_handler(sig=None, frame=None): 112 Qt.QApplication.quit() 113 114 signal.signal(signal.SIGINT, sig_handler) 115 signal.signal(signal.SIGTERM, sig_handler) 116 117 timer = Qt.QTimer() 118 timer.start(500) 119 timer.timeout.connect(lambda: None) 120 121 def quitting(): 122 tb.stop() 123 tb.wait() 124 qapp.aboutToQuit.connect(quitting) 125 qapp.exec_() 126 127 128if __name__ == '__main__': 129 main()

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

ターミナルで
"export PYTHONPATH=/usr/local/lib/python3/dist-packages/"
というpassを通してからgnuradioを起動させたら解決しました。

投稿2022/05/13 05:08

yu_89

総合スコア34

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問