FedoraInstall

From GNU Radio
Revision as of 13:38, 3 April 2022 by Troycurtisjr (talk | contribs) (Add updated instructions for Fedora 35 (at least))
Jump to navigation Jump to search

Fedora Installation Instructions

GNU Radio Package from Official Repo (Binary Installation)

GNU Radio is in the default Fedora repository since Fedora 14 (Laughlin). You can install the binary packages through your package manager:

   $ sudo dnf install gnuradio uhd     # for Fedora 22 and later

   $ sudo yum install gnuradio uhd     # for Fedora 21 and earlier

Compile GNU Radio from Source

First, you'll need to install the dependencies. Here is a command you can copy / paste to grab all of them:

For Fedora 35 and Later, with GNU Radio 3.10 or later

$sudo dnf install fftw-devel cppunit-devel libusb-devel \
     guile boost-devel alsa-lib-devel numpy gsl-devel python-devel pygsl \
     swig python-sphinx orc-devel orc-compiler doxygen python-docutils \
     python-cheetah python-lxml guile-devel python3-pyopengl python3-qt5-devel qwt-qt5-devel \
     qwtplot3d-qt5-devel xmlto graphviz zeromq-devel \
     python-zmq SDL-devel cmake make gcc gcc-c++ boost-devel python3-scipy \
     thrift-devel python-thrift python-mako gpsd-devel cppzmq-devel \
     python3-pybind11 pybind11-devel mathjax spdlog-devel python3-click-plugins \
     python3-pyqtgraph python3-matplotlib

$pip install --user pygccxml

For Fedora 22 and Later

$ sudo dnf install fftw-devel cppunit-devel wxPython-devel libusb-devel \
  guile boost-devel alsa-lib-devel numpy gsl-devel python-devel pygsl \
  swig python-sphinx orc-devel orc-compiler doxygen python-docutils \
  python-cheetah python-lxml guile-devel PyOpenGL PyQt4-devel qwt-devel \
  qwtplot3d-qt4-devel cmake xmlto graphviz PyQwt PyQwt-devel zeromq-devel \
  python-zmq SDL-devel cmake make gcc gcc-c++ boost-devel scipy \
  thrift-devel python-thrift python-mako gpsd-devel cppzmq-devel

For Fedora 21 and Earlier

$ sudo yum groupinstall "Engineering and Scientific" "Development Tools"
$ sudo yum install fftw-devel cppunit-devel wxPython-devel libusb-devel \
  guile boost-devel alsa-lib-devel numpy gsl-devel python-devel pygsl \
  ice-devel ice-python-devel swig python-sphinx orc-devel orc-compiler\
  python-cheetah python-lxml guile-devel PyOpenGL PyQt4-devel qwt-devel \
  qwtplot3d-qt4-devel cmake xmlto graphviz PyQwt PyQwt-devel zeromq2-devel \
  python-zmq comedilib-devel SDL-devel thrift-devel python-thrift python-mako

You now have the basic requirements for building GNU Radio. Additional requirements are listed below. Notice that some are optional. Once you have all the requirements installed, you can proceed with the source code download and installation instructions.

USRP

To use USRP hardware with GNU Radio, you will need to install UHD. If you are building GNURadio from source, installing UHD should be done before you build. You can find directions here

Post installation instructions

Python

The default install path for GNU Radio is /usr/local, but this is not part of the default Python module search path. The easiest way to that is to add this to ~/.bashrc or in the personal initialization file for your favourite shell.

Determine what version of python you are using:

$ python -V
Python 2.7

Then set the PYTHONPATH environment variable to a value that includes your installation prefix
and the appropriate python version. E.g.,

x86 (32-bit) systems:

export PYTHONPATH=/usr/local/lib/python2.7/site-packages

X86-64 systems:

export PYTHONPATH=/usr/local/lib64/python2.7/site-packages

You can also run this from the command line before running GNU Radio applications.