When running cmake on gr-osmosdr, it will report which backends have been enabled (if you have SoapySDR you should see a message about soapy being enabled).
Apart from that, Ubuntu build should be similar to Debian. There are some instructions in the readme file for Ubuntu 17.10, and I think the name of the packages should be similar. There is a list of all libraries used by the program, so if Ubuntu has named a package differently, you can still search for the library name. To build the program, you need to have development packages for all libraries (headers essentially). You can identify these packages by the -dev suffix. You will need either Qt4 or Qt5, depending on which version is used by GNU radio. With an older version of Ubuntu/Debian, a safe bet is generally Qt4.
Regarding GNU radio: you need all base libraries and the development packages, not just GNU radio companion. Should you find that the build is not successfull, it is a good idea to look at the output and identify which library is missing.
To be noted this would become much easier if someone would take it upon themselves to create packages for Ubuntu. I can’t do that since I don’t use it and some things are different to Debian.
Right now I have little spare time on my hands to step up the build/packaging game so I’m afraid it won’t improve soon. But, since you asked for some C++ code, I think you won’t have a problem with the build.
I should add that calling qradiolink an “amazing software suite” is a bit too much and tends to raise the expectations above a reasonable level. QRadioLink is simply an open source platform to learn and experiment, and the current version number (0.3.X) should hint at how stable and advanced it is
I’d like to use this space to thank Martin Hauke again, thanks to his efforts, Opensuse is the only distro packaging qradiolink.