日誌


2018/05/10

PyBOMBSを用いたGNU Radioのインストールはとっても便利!

Tweet ThisSend to Facebook | by 山田洋
PyBOMBSは、GNU Radioのための “package manager”だ。何度か使ってみて、最新安定版のGNU Radioのインストールには欠かせないことがわかった。build-gnuradioスクリプトを用いてGNU Radioをビルド・インストールする方法は、これまで何年間も用いてきたが、build-gnuradioスクリプトは最近メンテされていないように感じる。Linuxディストリビューションのバイナリパッケージに含まれるGNU Radioはバージョンが古く、USRPを活用する上で全く使い物にならないことが多く、バイナリパッケージはここ5年間、ほとんど使っていない。

Ubuntu16.04でのPyBOMBSを用いたGNU Radioのインストールの実行例を示す。まず、PyBOMBS環境をインストールする(Ubuntu16.04のパッケージは、最新の状態)。
$ sudo apt install python-pip
$ sudo -H pip install --upgrade pip
$ sudo -H pip install pybombs
以上で、PyBOMBSがインストールされる。

次に、PyBOMBSを用いて GNU Radioをソースコードからビルドする。各ユーザのホームディレクトリで下記を実行する。
$ pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git
$ mkdir prefix/
$ pybombs prefix init -a default prefix/default/ -R gnuradio-default
(ここから長い)

最終的に、下記のようにビルドされる。
Install tree:
|
\- gnuradio
   |
   +- uhd
   |
   \- apache-thrift
PyBOMBS.install_manager - INFO - Phase 2: Recursively installing source packages to prefix:
PyBOMBS.install_manager - INFO - Installing package: apache-thrift
PyBOMBS.Packager.apt - INFO - Install python-apt to speed up apt processing.
Cloning:     (100%) [==========================================================================================]
Cloning:     (100%) [==========================================================================================]
PyBOMBS.Packager.apt - INFO - Install python-apt to speed up apt processing.
Configuring: (100%) [==========================================================================================]
Building:    (100%) [==========================================================================================]
Installing:  (100%) [==========================================================================================]
PyBOMBS.install_manager - INFO - Installation successful.
PyBOMBS.install_manager - INFO - Installing package: uhd
Cloning:     (100%) [==========================================================================================]
Configuring: (100%) [==========================================================================================]
Building:    (100%) [==========================================================================================]
Installing:  (100%) [==========================================================================================]
PyBOMBS.install_manager - INFO - Installation successful.
PyBOMBS.install_manager - INFO - Installing package: gnuradio
Cloning:     (100%) [==========================================================================================]
Configuring: (100%) [==========================================================================================]
Building:    (100%) [==========================================================================================]
Installing:  (100%) [==========================================================================================]
PyBOMBS.install_manager - INFO - Installation successful.

以上でビルドが終了したので、パス設定を行う(ログイン時に設定されるようにしておけばよい)。
$ source ./prefix/default/setup_env.sh

下記のように、gnuradio-companionなどを実行できる。
$ gnuradio-companion

PyBOMBSを使ってみたら、便利で役に立つことがわかった。PyBOMBSを使えば、より新しいバージョンのUbuntuでもGNU Radioをビルドできそうな気がする。
12:27 | 投票する | 投票数(0) | コメント(0)