GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available, low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic, and commercial environments to support both wireless communications research and real-world radio systems.
Please visit the GNU Radio website at https://www.gnuradio.org/ and the wiki at https://wiki.gnuradio.org/. Bugs and feature requests are tracked on GitHub's Issue Tracker. If you have questions about GNU Radio, please search the discuss-gnuradio mailing list archive, as many questions have already been asked and answered. Please also subscribe to the mailing list and post your new questions there.
How to Install GNU Radio
The recommended way to install GNU Radio on most platforms is using available binary package distributions.
The following command is for Debian, Ubuntu, and derivatives. It will install Release 3.7 with Python2.
sudo apt install gnuradio
For other operating systems, see Installing from Binaries
PyBOMBS is good at building GNU Radio, UHD, and various Out of Tree (OOT) modules from source and then installing into a specified user directory rather than in the system files. PyBOMBS detects the user's Operating System and loads all of the prerequisites in the first stage of the build.
For a quick start, open a terminal window and enter the following commands. This will install Release 3.8 with Python3.
sudo -H pip3 install PyBOMBS pybombs auto-config pybombs recipes add-defaults pybombs prefix init ~/gnuradio -R gnuradio-default
Wait. The terminal will show the progress.
To run GNU Radio Companion, enter:
pybombs run gnuradio-companion
Complete PyBOMBS instructions are in the PyBOMBS README.
Complete instructions for building Gnuradio from source code are detailed in Installing GR From Source.
Some files have been changed many times throughout the years. Copyright notices at the top of source files list which years changes have been made. For some files, changes have occurred in many consecutive years. These files may often have the format of a year range (e.g., "2006 - 2011"), which indicates that these files have had copyrightable changes made during each year in the range, inclusive.