Software Defined Radio

gnuradio

gnuradio is the framework the whole SDR field is built on. It’s a toolkit of signal-processing blocks — sources, sinks, filters, demodulators, decoders — that you wire together into a flowgraph to build a radio system from scratch. Its graphical editor, GNU Radio Companion, lets you assemble that flowgraph visually and run it live; many of the standalone SDR tools are, under the hood, GNU Radio flowgraphs someone built and packaged. When you need to decode a protocol nothing else handles, this is where you build the decoder.

Official-repo package; Security → Software Defined Radio → gnuradio. Launch the visual editor with gnuradio-companion; the gnuradio-config-info utility reports the installation’s paths and version.

The help it prints

Program options: gnuradio-config-info [options]:
  -h [ --help ]         print help message
  --print-all           print all information
  --prefix              print GNU Radio installation prefix
  --sysconfdir          print GNU Radio system configuration directory
  --prefsdir            print GNU Radio preferences directory
  --userprefsdir        print GNU Radio user preferences directory
  --persistentdir       print GNU Radio persistent state directory
  --prefs               print GNU Radio preferences
  --builddate           print GNU Radio build date (RFC2822 format)
  --enabled-components  print GNU Radio build time enabled components
  --cc                  print GNU Radio C compiler version
  --cxx                 print GNU Radio C++ compiler version
  --cflags              print GNU Radio CFLAGS
  -v [ --version ]      print GNU Radio version
  --pybind              print pybind11 version used in this build

Using it

# Open the visual flowgraph editor
gnuradio-companion

# Report install prefix, version, and enabled components
gnuradio-config-info --prefix --version --enabled-components

In Companion you drag blocks onto a canvas, connect them, set their sample rates and frequencies, and hit run — the flowgraph executes live, driving your SDR and showing scopes and waterfalls you added. It’s a build-your-own-radio environment rather than a point-and-listen tool; for the latter, start with gqrx.