1

GNURadio の UHD モジュールに含まれる USRP Source ブロックのコピーを作成して、work()関数を自由に変更できるようにしようとしています。

今のところ、「USRP ソース」ブロックとまったく同じように機能するブロックを作成しようとしています。「asat」と呼ばれる新しいモジュールを作成し、、、、、およびファイルを作成し.cc、すべてをコンパイルしてエラーなしでインストールしました。.h.xmlCMakeLists__init__

ただし、GRC .py ファイルを実行しようとすると、次のエラーが発生します。

File "/usr/local/lib/python2.7/dist-packages/asat/__init__.py", line 128, in <module> _prepare_asat_swig()
File "/usr/local/lib/python2.7/dist-packages/asat/__init__.py", line 32, in _prepare_asat_swig import asat_swig
File "/usr/local/lib/python2.7/dist-packages/asat/asat_swig.py", line 26, in <module> _asat_swig = swig_import_helper()
File "/usr/local/lib/python2.7/dist-packages/asat/asat_swig.py", line 22, in swig_import_helper _mod = imp.load_module('_asat_swig', fp, pathname, description)
ImportError: /usr/local/lib/python2.7/dist-packages/asat/_asat_swig.so: undefined symbol: /ZTIN3uhd9key_errorE

私はエラーを解決しようとして髪を引き裂いてきました.私のグーグルから、CMAKEでライブラリが正しくリンクされていないことが問題であると思われます. .

誰かがリンク先のライブラリを提案できたとしても、ライブラリで正しい軌道に乗っている場合は、エラーの原因のトラブルシューティングを手伝っていただければ幸いです。

私を助けてくれる人のために、ソースとビルドのディレクトリを含む github リポジトリを作成しました。

4

1 に答える 1

0

ジョエル -

新しいブロックが Python に SWIG されるように、新しいブロックの SWIG ファイルを作成する必要があります。そうしないと、GRC が生成する Python フローグラフからそれを使用することができません。

GNURAdio ソース ツリーには、参照できる *.i SWIG ファイルがたくさんあります。または、gnuradio-discuss メーリング リストで質問することをお勧めします。このメーリング リストでは、ほぼすべての GNURadio サポートが行われています (SO を監視していることを知っているのは私だけです)。

https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

乾杯、

ベン

于 2012-11-27T01:04:45.580 に答える