make DYNAMIC the default?

23 views
Skip to first unread message

Phil Karn

unread,
Feb 13, 2025, 3:04:40 AM2/13/25
to ka9q-...@googlegroups.com
I am thinking of making the DYNAMIC build option the default. I.e., all
SDR hardware drivers would be built as shared libraries residing in
/usr/local/lib/ka9q-radio, including the ones previously statically
linked into the radiod binary. These are:

airspy, airspyhf, rx888, sig_gen, rtlsdr, funcube

They would be treated the same as the dynamic-only drivers: fobos, sdrplay

The main benefit would be simplifying things for those who want to
(frequently) (re)build radiod without having to install the support
libraries for hardware they don't have or want to use. I.e. you wouldn't
have to install

libairspy-dev, libairspyhf-dev, librtlsdr-dev, portaudio19-dev,
libusb-1.0-0-dev, libusb-dev

unless you have those hardware front ends or build other components that
also need them (e.g., monitor requires portaudio).

On my own systems I've been using the DYNAMIC build option to force
dynamic loading of all hardware driver modules, and this has been
working fine for me. So this should be OK. Any objections?

Phil


Dave Larsen

unread,
Feb 13, 2025, 7:05:48 PM2/13/25
to Phil Karn, ka9q-...@googlegroups.com

Phil
I think this a good idea.  It works for you and will simplify the way the program structure works making it more modular.

Dave KV0S


--
You received this message because you are subscribed to the Google Groups "ka9q-radio" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ka9q-radio+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ka9q-radio/b5d11b29-a233-45a7-9d62-705bf8ee0a4f%40ka9q.net.
For more options, visit https://groups.google.com/d/optout.

Franco Venturi

unread,
Feb 13, 2025, 11:33:27 PM2/13/25
to ka9q-radio
I agree with Dave that it is a very good idea.
Many times I had to butcher ka9q-radio Makefile to remove all the SDRs I don't have (RTL-SDR, Airspy, FunCube, etc) in order to get rid of all those dependencies and libraries I don't have on my computer.

I also think having dynamic modules helps creating a well defined interface between the hardware and the core of radiod, and it opens the door to for other developers to add more SDR devices (like FobosSDR) to ka9q-radio, freeing you to work on the core of radiod.

Franco
Reply all
Reply to author
Forward
0 new messages