Linux下安装GNU Radio的方法有两种:
1,用系统下binary package直接安装
$sudo apt-get install gnuradio
2,用源码安装
由于尝试用上一种方式安装以后gnuradio-companion不能正常启动,会出现 ”段错误(核心已转储)“,故需要先将此版本卸载:
$sudo apt-get uninstall gnuradio
安装的方式是首先下载代码,再手动编译。
1],下载代码
http://gnuradio.org/,选择一个最新版本gnuradio-3.7.10.tar.gz下载,并解压.
2],安装各种Pre-Requisites
推荐尽量使用apt-get从库里找,库里找不到再下载包进行安装。
可以使用$sudo aptitude进入图形化界面中搜索。
下面是需要安装的dependency列表:
Global Dependencies
Git http://git-scm.com/downloads
cmake (>= 2.6.3) http://www.cmake.org/cmake/resources/software.html
boost (>= 1.35) http://www.boost.org/users/download/
cppunit (>= 1.9.14) http://freedesktop.org/wiki/Software/cppunit/
fftw3f (>= 3.0.1) http://www.fftw.org/download.html
Python Wrappers
python (>= 2.5) http://www.python.org/download/
swig (>= 1.3.31) http://www.swig.org/download.html
numpy (>= 1.1.0) http://sourceforge.net/projects/numpy/files/NumPy/
docs: Building the documentation
doxygen (>= 1.5) http://www.stack.nl/~dimitri/doxygen/download.html
latex* (>= 2.0) http://www.latex-project.org/
grc: The GNU Radio Companion
Cheetah (>= 2.0) http://www.cheetahtemplate.org/
pygtk (>= 2.10) http://www.pygtk.org/downloads.html
gr-wavelet: Collection of wavelet blocks
gsl (>= 1.10) http://gnuwin32.sourceforge.net/packages/gsl.htm
gr-qtgui: The QT-based Graphical User Interface
qt4 (>= 4.4.0) http://qt.nokia.com/downloads/
qwt (>= 5.2.0) http://sourceforge.net/projects/qwt/
pyqt (>= 4.10.0) http://www.riverbankcomputing.co.uk/software/pyqt/download
gr-wxgui: The WX-based Graphical User Interface
wxpython (>= 2.8) http://www.wxpython.org/
python-lxml (>= 1.3.6) http://lxml.de/
gr-audio: Audio Subsystems (system/OS dependent)
audio-alsa (>= 0.9) http://www.alsa-project.org
audio-jack (>= 0.8) http://jackaudio.org/
portaudio (>= 19) http://www.portaudio.com/
audio-oss (>= 1.0) http://www.opensound.com/oss.html
audio-osx
audio-windows
注:有一些不重要的组件如audio未能安装并不会影响gnuradio的正常运行,可能会造成某些功能的缺失。
在安装swig组件的时候,出现了报错:
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe4 in position 12: ordinal not in range(128)
make[2]: * [gnuradio-runtime/swig/pmt_swig_doc.i] 错误 1
make[1]: * [gnuradio-runtime/swig/CMakeFiles/pmt_swig_swig_doc.dir/all] 错误 2
make: * [all] 错误 2
原因可能是中文下载目录不能识别,修改为download之后,重新来过。。
3],所有组件准备好后,进行解压编译。
解压:
$tar -zxvf gnuradio-3.7.10.tar.gz
进入解压后文件夹:
$cd gnuradio-3.7.10
build的步骤:
$mkdir build
$cd build
$cmake ../
$make
make过程比较久,完成后可以进行test
$make test
但test过程中出现一些问题:
The following tests FAILED:
82 - qa_polar_decoder_sc_list (Failed)
84 - qa_polar_decoder_sc_systematic (Failed)
85 - qa_polar_encoder_systematic (Failed)
86 - qa_polar_encoder (Failed)
93 - qa_polar_decoder_sc (Failed)
Errors while running CTest
make: * [test] 错误 8
还未明原因,但是不影响gnuradio的安装与启动
最后一步,安装:
$sudo make install
安装完成后进入图形编辑器
gnuradio-companion
此时报错:
ImportError: libgnuradio-pmt-3.7.10.so.0.0.0: 无法打开共享对象文件: 没有那个文件或目录
进入sudo aptitude查找此内部组件进行安装,之后再尝试一次,gnuradio-companion成功启动。
故安装时由于各种原因出现缺省的问题,直接补装即可解决。