Gqrx: a GNU Radio SDR receiver for Linux and Mac
Software defined radio receiver powered by GNU Radio and Qt.
At a glance
- What is it?
- Gqrx is a Qt front end to GNU Radio for AM/FM/SSB listening and FFT viewing with RTL-SDR, Airspy, HackRF and similar hardware. It is a receiver, not a transmitter, and its install path on Linux is usually the distribution package rather than a build from source.
- Who is it for?
- Gqrx suits listeners on Linux or Mac who already have gr-osmosdr-supported hardware and want a Qt interface for AM/FM/SSB and FFT work. It is the wrong tool for anyone who needs to transmit, and the README gives no Windows package of its own, only radioconda.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 55 days ago.
- What is it written in?
- Mainly C++, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What Gqrx solves, and who it is for
Gqrx is an open source software defined radio receiver built on GNU Radio and the Qt GUI toolkit. The README describes it as usable as an AM/FM/SSB receiver with audio output or as an FFT-only instrument, with network sockets as hooks for external applications. That covers two distinct audiences: operators who want to listen to a signal, and people who want a spectrum view of what is on the air without decoding anything.
It is not a general purpose SDR framework. It is a desktop receiver application. The hardware list in the README is specific: Funcube Dongle, RTL-SDR, Airspy, HackRF, BladeRF, RFSpace, USRP and SoapySDR, all reached through gr-osmosdr. On the platform side the README says it currently works on Linux and Mac. Windows support is routed through radioconda, an external project, not through a Gqrx installer.
The project is not archived, and the last push to the default branch was on 2026-08-06. The most recent tagged release listed is v2.17.7 from 2025-05-27. Those two facts together are what the repository supports saying about activity; the README itself makes no maintenance promises.
How the GNU Radio, Qt and gr-osmosdr pieces fit
The data flow is conventional for a GNU Radio application. gr-osmosdr sits between Gqrx and the hardware driver, which is why one binary can talk to RTL-SDR, Airspy, HackRF and the rest: the driver selection happens underneath, and the README notes that RFSpace support is built in rather than coming from a separate driver package. The README also says the first launch opens a device configuration dialog and that connected supported devices are discovered automatically.
Above that, GNU Radio supplies the signal processing blocks. The README lists the required components by name: gnuradio-runtime, gnuradio-analog, gnuradio-audio, gnuradio-blocks, gnuradio-digital, gnuradio-fft, gnuradio-filter, gnuradio-pmt, and gnuradio-network for GNU Radio 3.10 only. That list is a useful signal about scope. Digital, filter, fft and analog are all present, so the receiver modes and the spectrum display are built from the same block set rather than from separate code paths.
Qt handles the interface and the runtime dependencies the README names are Core, GUI, Network, Widgets and Svg, with Svg marked runtime-only. Both Qt 5 and Qt 6 are accepted. The network sockets the README mentions as hooks for external applications are the reason Qt Network appears in that list; the README does not document the socket protocol itself, so anyone planning to drive Gqrx from another process should read the source rather than expect a specification in the README.
Installing Gqrx and making a first RTL-SDR reception
The README points to three distribution channels: source code and binaries for Linux and Mac from the releases page, Linux distribution repositories, and Mac support through MacPorts and Homebrew. On Windows it points to radioconda. Many Linux distributions provide gqrx in their package repositories, so the fastest route on Linux is usually the package manager rather than the build below.
Building from source requires GNU Radio 3.8, 3.9 or 3.10 with the components listed above, gr-osmosdr, Qt 5 or Qt 6, and cmake version 3.5.0 or newer. The README gives this command line sequence:
$ git clone https://github.com/gqrx-sdr/gqrx.git gqrx.git
$ cd gqrx.git
$ mkdir build
$ cd build
$ cmake ..
$ makeAfter the build, the README makes one recommendation that is easy to skip: run the volk_profile utility before running gqrx, because it detects and enables processor-specific optimisations and, in the README's words, will in many cases give a significant performance boost. The README also warns that on some systems default cmake release builds are over-optimized and perform poorly, and suggests forcing -O2 before the cmake step:
export CXXFLAGS=-O2On first start, a device configuration dialog appears and connected supported devices are discovered automatically. Select your device from the drop-down list and continue. If the device is absent, the README names three causes: the driver was not included in a binary distribution, the udev rule is not properly configured, or a Linux kernel driver is blocking access. Device-specific tools such as rtl_test, airspy_rx, hackrf_transfer and qthid are the README's suggested way to check the hardware independently. Gqrx supports multiple configurations and sessions, and a configuration can be loaded from the GUI or with the -c command line argument; gqrx --help lists the full set of arguments.
A receiver, not a transmitter, and other hard limits
The clearest limitation is in the project's own description: Gqrx is a receiver. Nothing in the README describes a transmit path, and the hardware list is framed around reception. If your work requires transmitting, this is the wrong application and no configuration change will fix that.
The second limit is the dependency chain. Building from source means matching a GNU Radio version and its component set, gr-osmosdr, a Qt major version and a cmake floor. The README accepts GNU Radio 3.8, 3.9 and 3.10 but explicitly ties gnuradio-network to 3.10 only, which is the kind of detail that breaks a build when a distribution ships a different GNU Radio than expected. Device support is not uniform either: FUNcube Dongle support comes from an external gr-funcube repository, RTL-SDR from the Osmocom gitea instance, Airspy from airspyone_host, and so on. Each of those is a separate project with its own release cadence.
The third limit is the documentation surface. The README says tutorials and howtos are being written and published on the website, and directs known problems to the GitHub issue tracker and general help to a Google group. There is no manual in the repository, so operational questions about specific demodulation settings have no in-tree reference to check against.
Gqrx compared with a flowgraph built in GNU Radio Companion
The real alternative is not another receiver application but GNU Radio Companion, the graphical flowgraph editor that ships with GNU Radio itself. Gqrx and a hand-built flowgraph share the same underlying blocks; the difference is who assembles them.
Gqrx hands you a fixed receiver with a Qt interface: a device dialog, a spectrum display, demodulation modes and configuration sessions, plus network sockets for external control. You get a working receiver quickly, and the README's device discovery means you do not write driver selection code. What you give up is the shape of the graph. If you need a custom chain, a decoder Gqrx does not expose, or a processing order the application does not offer, the Qt interface is a boundary rather than a starting point.
A GNU Radio Companion flowgraph inverts that. You assemble the blocks yourself, so any arrangement the installed GNU Radio version supports is available, including the gnuradio-digital and gnuradio-filter components Gqrx also depends on. The cost is that you build the interface, the configuration handling and the device selection yourself. Gqrx is the better fit when the standard receiver modes are what you need; GNU Radio Companion is the better fit when they are not.
Licence and the cost of keeping up
Gqrx is licensed under the GNU General Public License, and the repository carries a COPYING file and a LICENSE-CTK file at the top level. The README adds a detail worth noting: some source files were adapted from Cutesdr by Moe Weatley and come with a Simplified BSD license. That means the tree is not under a single licence, and anyone redistributing a modified build should read the individual file headers rather than assume the GPL covers everything. This is a description of what the repository states, not legal advice.
Upgrade cost is driven by the dependency list rather than by Gqrx's own release cadence. The three most recent tagged releases are v2.17.7, v2.17.6 and v2.17.5, and the last push to the default branch was on 2026-08-06. When you build from source, a GNU Radio major version change can invalidate your build because the required component list is version-specific, as the gnuradio-network note for 3.10 shows. On a distribution package, that work belongs to the packager, but you inherit whatever GNU Radio and gr-osmosdr versions that distribution ships. The README does not document a rollback procedure for a configuration or a build, and it points known problems at the GitHub issue tracker.
Editorial conclusion
Gqrx suits listeners on Linux or Mac who already have gr-osmosdr-supported hardware and want a Qt interface for AM/FM/SSB and FFT work. It is the wrong tool for anyone who needs to transmit, and the README gives no Windows package of its own, only radioconda. Before adopting it, verify that your device appears in the first-run configuration dialog, since a missing driver, an unconfigured udev rule or a blocking kernel driver will keep it out of the drop-down list.
Frequently asked questions
What is Gqrx SDR?
It is an open source software defined radio receiver implemented using GNU Radio and the Qt GUI toolkit, per the README. It can run as an AM/FM/SSB receiver with audio output or as an FFT-only instrument.
Can Gqrx transmit?
No. The README describes Gqrx as a receiver and lists no transmit capability; the hardware it supports is used for reception through gr-osmosdr.
How do I install Gqrx on my Raspberry Pi?
The README does not give Raspberry Pi instructions. It says many Linux distributions provide gqrx in their package repositories, and that source builds need GNU Radio 3.8, 3.9 or 3.10, gr-osmosdr, Qt 5 or Qt 6 and cmake 3.5.0 or newer.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/gqrx-sdr-gqrx)