Building against limesuite-ng

Oh okay, so if I leave soapy support and an application uses soapy, it may just list the like device twice? One for use with NG and once for non NG as I see now the soapy module has ng in its name.

Can you see any benefit in both? I figured if something uses soapy, that it’d just be best to let NG handle it.

when using soapy, you can give it an argument “driver” which to use.
“lime” - legacy LimeSuite
“limesuiteng” - LimeSuiteNG

If the application loads all soapy drivers, then yes, it would list limesdr devices twice.

Excellent. Sorry for the wide range of questions. Possibly one more for you,

What I’m seeing now after having installed the LimeSuite API alongside LimeSuiteNG and building QRadioLink (it builds fine now)…

Running LDD on the qradiolink binary reveals this

libLimeSuite.so.23.11-1 => /usr/local/lib/libLimeSuite.so.23.11-1 (I made sure no symlink is messing anything up)

However, running qradiolink with qdb reveals a segmentation fault with it ending in

0x0000blahblah in _GLOBAL__sub_I_LMS7002M.cpp () from /usr/local/lib/liblimesuiteng.so.0.3-1

It’s not clear to me why there is the reference to the limesuiteng API.

If I delete/uninstall the LimeSuite-NG package I created, change nothing else (leaving just LimeSuite installed) Qradiolink loads. Thought this was interesting. Some kind of conflict maybe?

edit: I see it’s linked against LimeSuite here

Questions and feedback are welcome.

hmm yes, it appears so, that there is a conflict between the libraries. Both export same named global symbol const std::vector<LMS7002M::ReadOnlyRegister> LMS7002M::readOnlyRegisters hence depending on linking order the initialization code of that variable can be picked up from other library that was not initialized yet and cause segmentation fault. I’ll fix that.

Thank you very much. I’ll rebuild/reinstall after I see changes on the repo.

I’ve pushed a temporary branch fix-symbol-collision for you to progress.
True fix will come later, it will require either entire library to be put into different namespace, or LMS7002M class removed from exported symbols.

I uninstalled NG, did a git pull, checked out the other branch, rebuilt/reinstalled. QradioLink starts with no issue now w/ both LimeSuite and LimeSuiteNG present. I’ve not actually tested with an SDR yet, but it builds fine and I suspect will run fine.

I’ve begun testing various applications by using my Lime Mini 2. I chose only to install the soapy from NG to see what would happen when using it with application like SigDigger, CubicSDR.

What I notice so far is that SoapyUtil has no issue finding and displaying the Lime entry. However, SigDigger enumerates, but doesn’t show it as an option. CubicSDR enumerates, shows it as selectable, but upon selecting it crashes.

I know this is very vague feedback. I’ll provide more details asap. I’d like to compare behavior by also going back and installing soapy with legacy limesuite.

As mentioned before, I’m doing this on a system where I have both APIs installed, but only Soapy from NG at the moment.

I can move this over to a ticket if better. This is gdb with Cubic

(gdb) run
Starting program: /usr/bin/CubicSDR 
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libwx_gtk3u_propgrid-3.2.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libgdk-3.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libgobject-2.0.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libglib-2.0.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libjack.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libpulse-simple.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libpulse.so.0
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libgmodule-2.0.so.0
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libcap.so.2
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libbrotlidec.so.1
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libbrotlicommon.so.1
[New Thread 0x7ffff2bff6c0 (LWP 142858)]
[New Thread 0x7fffebfff6c0 (LWP 142859)]
[New Thread 0x7ffff23fe6c0 (LWP 142860)]
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/gio/modules/libgvfsdbus.so
warning: could not find '.gnu_debugaltlink' file for /usr/lib/x86_64-linux-gnu/gvfs/libgvfscommon.so
Loaded 283 rig models via hamlib.
[New Thread 0x7ffff32426c0 (LWP 142862)]
[Thread 0x7ffff32426c0 (LWP 142862) exited]

Audio Device #0 Built-in Audio
        Default Output? Yes
        Default Input? No
        Input channels: 2
        Output channels: 2
        Duplex channels: 0
        Native formats:
                16-bit signed integer.
                24-bit signed integer.
                32-bit signed integer.
                32-bit float normalized between plus/minus 1.0.
        Supported sample rates:
                8000hz
                16000hz
                22050hz
                32000hz
                44100hz
                48000hz
                96000hz
                192000hz

[New Thread 0x7ffff1b7c6c0 (LWP 142863)]
[New Thread 0x7ffff137b6c0 (LWP 142864)]
[New Thread 0x7ffff0b7a6c0 (LWP 142865)]
[New Thread 0x7fffeb7fe6c0 (LWP 142866)]
[New Thread 0x7fffd7fff6c0 (LWP 142867)]
[New Thread 0x7fffd77fe6c0 (LWP 142868)]
[New Thread 0x7fffd6bfd6c0 (LWP 142874)]
SDR enumerator starting.
SoapySDR init..
        API Version: v0.8.0
        ABI Version: v0.8
        Install root: /usr
        Loading modules... 
warning: could not find '.gnu_debugaltlink' file for /lib/x86_64-linux-gnu/libboost_serialization.so.1.83.0
        Available factories...LiteXM2SDR, airspy, hackrf, limesuiteng, miri, null, osmosdr, plutosdr, redpitaya, remote, rfspace, rtlsdr, uhd
Available vertical sync SwapInterval functions: 
        glxSwapIntervalEXT: Yes
        DRI2SwapInterval: No
        glxSwapIntervalMESA: Yes
        glxSwapIntervalSGI: Yes
[New Thread 0x7fffca1ff6c0 (LWP 142875)]
[Thread 0x7fffca1ff6c0 (LWP 142875) exited]
[New Thread 0x7fffc99fe6c0 (LWP 142876)]
[New Thread 0x7fffc91fd6c0 (LWP 142877)]
[New Thread 0x7fffc89fc6c0 (LWP 142878)]
[New Thread 0x7fffbffff6c0 (LWP 142879)]
Using glxSwapIntervalEXT.
[New Thread 0x7fffbf7fe6c0 (LWP 142880)]

[New Thread 0x7fffbeffd6c0 (LWP 142881)]
[Thread 0x7fffbeffd6c0 (LWP 142881) exited]
[New Thread 0x7fffbe7fc6c0 (LWP 142882)]
[Thread 0x7fffbe7fc6c0 (LWP 142882) exited]
[New Thread 0x7fffbdffb6c0 (LWP 142883)]
[New Thread 0x7fffbd7fa6c0 (LWP 142884)]
[Thread 0x7fffbd7fa6c0 (LWP 142884) exited]
[New Thread 0x7fffbcff96c0 (LWP 142885)]
[New Thread 0x7fffb3fff6c0 (LWP 142886)]
[New Thread 0x7fffb37fe6c0 (LWP 142887)]
[New Thread 0x7fffb2ffd6c0 (LWP 142888)]
[New Thread 0x7fffb27fc6c0 (LWP 142889)]
[New Thread 0x7fffca1ff6c0 (LWP 142890)]
[Thread 0x7fffca1ff6c0 (LWP 142890) exited]
[New Thread 0x7fffb1ffb6c0 (LWP 142891)]
[New Thread 0x7fffb17fa6c0 (LWP 142892)]
[New Thread 0x7fffb0ff96c0 (LWP 142893)]
[New Thread 0x7fffa7fff6c0 (LWP 142894)]
[New Thread 0x7fffa77fe6c0 (LWP 142895)]
[INFO] [UHD] linux; GNU C++ version 13.2.0; Boost_108300; UHD_4.1.0.0-0-d88950d2
[New Thread 0x7fffa67fc6c0 (LWP 142897)]
[New Thread 0x7fffa6ffd6c0 (LWP 142896)]
Loaded font 'Bitstream Vera Sans Mono' from '/usr/share/cubicsdr/fonts/vera_sans_mono12_0.png', parsed 255 characters.
[New Thread 0x7fffa5ffb6c0 (LWP 142898)]
[New Thread 0x7fffa57fa6c0 (LWP 142899)]
[New Thread 0x7fffa4ff96c0 (LWP 142900)]
[New Thread 0x7fff9bfff6c0 (LWP 142901)]
[New Thread 0x7fff9b7fe6c0 (LWP 142902)]
[New Thread 0x7fff9affd6c0 (LWP 142903)]
[New Thread 0x7fff9a7fc6c0 (LWP 142904)]
[New Thread 0x7fff99ffb6c0 (LWP 142905)]
[Thread 0x7fffa4ff96c0 (LWP 142900) exited]
Loaded font 'Bitstream Vera Sans Mono' from '/usr/share/cubicsdr/fonts/vera_sans_mono16_0.png', parsed 255 characters.
[Thread 0x7fffc89fc6c0 (LWP 142878) exited]
[Thread 0x7fffc99fe6c0 (LWP 142876) exited]
[New Thread 0x7fffc99fe6c0 (LWP 142906)]
Loaded font 'Bitstream Vera Sans Mono' from '/usr/share/cubicsdr/fonts/vera_sans_mono18_0.png', parsed 255 characters.
[New Thread 0x7fffc89fc6c0 (LWP 142907)]
[Thread 0x7fffbf7fe6c0 (LWP 142880) exited]
[New Thread 0x7fff997fa6c0 (LWP 142908)]
[Thread 0x7fffa6ffd6c0 (LWP 142896) exited]
[Thread 0x7fffb1ffb6c0 (LWP 142891) exited]
[Thread 0x7fffb37fe6c0 (LWP 142887) exited]
[Thread 0x7fffc91fd6c0 (LWP 142877) exited]
[Thread 0x7fffb3fff6c0 (LWP 142886) exited]
[Thread 0x7fff9b7fe6c0 (LWP 142902) exited]
[Thread 0x7fffbcff96c0 (LWP 142885) exited]
[Thread 0x7fff9bfff6c0 (LWP 142901) exited]
Loaded font 'Bitstream Vera Sans Mono' from '/usr/share/cubicsdr/fonts/vera_sans_mono24_0.png', parsed 255 characters.
Loaded font 'Bitstream Vera Sans Mono' from '/usr/share/cubicsdr/fonts/vera_sans_mono27_0.png', parsed 255 characters.
[Thread 0x7fffc89fc6c0 (LWP 142907) exited]
[New Thread 0x7fffc89fc6c0 (LWP 142909)]
[Thread 0x7fff997fa6c0 (LWP 142908) exited]
[Thread 0x7fff9affd6c0 (LWP 142903) exited]
[Thread 0x7fffb0ff96c0 (LWP 142893) exited]
[Thread 0x7fff9a7fc6c0 (LWP 142904) exited]
[Thread 0x7fffc89fc6c0 (LWP 142909) exited]
[Detaching after vfork from child process 142910]
[Thread 0x7fffbffff6c0 (LWP 142879) exited]
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

[Thread 0x7fffa7fff6c0 (LWP 142894) exited]
[Thread 0x7fffa57fa6c0 (LWP 142899) exited]
[Thread 0x7fffb17fa6c0 (LWP 142892) exited]
[Thread 0x7fffb27fc6c0 (LWP 142889) exited]
[Thread 0x7fffb2ffd6c0 (LWP 142888) exited]
[Thread 0x7fffbdffb6c0 (LWP 142883) exited]
  addr = 0403:601f
  driver = limesuiteng
  label = LimeSDR Mini xxxxxxxxxxxxxx
  name = LimeSDR Mini
  serial = 1D90F834C97045
Make device 0
[New Thread 0x7fffb2ffd6c0 (LWP 142913)]
[Thread 0x7fffb2ffd6c0 (LWP 142913) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142914)]
[Thread 0x7fffb2ffd6c0 (LWP 142914) exited]
[Detaching after vfork from child process 142915]
[INFO] Make connection: 'LimeSDR Mini xxxxxxxxx'
[New Thread 0x7fffb2ffd6c0 (LWP 142917)]
[Thread 0x7fffb2ffd6c0 (LWP 142917) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142918)]
[Thread 0x7fffb2ffd6c0 (LWP 142918) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142919)]
[INFO] Reference clock 40.00 MHz
[INFO] Device name: LimeSDR-Mini_v2
[INFO] Reference: 40 MHz
[INFO] LMS7002M register cache: Disabled
  boardSerialNumber=0x1d90f834c97045
  firmwareVersion=8
  gatewareVersion=2
  hardwareVersion=5
  protocolVersion=1
[Thread 0x7fffb2ffd6c0 (LWP 142919) exited]


Reporting enumeration complete.
SDR enumerator done.
[Thread 0x7fffd6bfd6c0 (LWP 142874) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142920)]
[Thread 0x7fffb2ffd6c0 (LWP 142920) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142921)]
[Thread 0x7fffb2ffd6c0 (LWP 142921) exited]
[Detaching after vfork from child process 142922]
[INFO] Make connection: 'LimeSDR Mini 1D90F834C97045'
[New Thread 0x7fffb2ffd6c0 (LWP 142924)]
[Thread 0x7fffb2ffd6c0 (LWP 142924) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142925)]
[Thread 0x7fffb2ffd6c0 (LWP 142925) exited]
[New Thread 0x7fffb2ffd6c0 (LWP 142926)]
[INFO] Reference clock 40.00 MHz
[INFO] Device name: LimeSDR-Mini_v2
[INFO] Reference: 40 MHz
[INFO] LMS7002M register cache: Disabled

Thread 1 "CubicSDR" received signal SIGSEGV, Segmentation fault.
0x0000555555633745 in SDRDeviceInfo::getSampleRates(int, unsigned long) ()
(gdb) bt
#0  0x0000555555633745 in SDRDeviceInfo::getSampleRates(int, unsigned long) ()
#1  0x0000555555633865 in SDRDeviceInfo::getSampleRateNear(int, unsigned long, long) ()
#2  0x000055555569edea in SDRDevicesDialog::refreshDeviceProperties() ()
#3  0x00005555556a0155 in SDRDevicesDialog::OnSelectionChanged(wxTreeEvent&) ()
#4  0x00007ffff67a3012 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0                             
#5  0x00007ffff67a516d in wxEvtHandler::SearchDynamicEventTable(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#6  0x00007ffff67a54cd in wxEvtHandler::TryHereOnly(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#7  0x00007ffff67a557f in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#8  0x00007ffff67a5692 in wxEvtHandler::ProcessEvent(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#9  0x00007ffff6f95639 in wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
#10 0x00007ffff6fa53a3 in wxGenericTreeCtrl::DoSelectItem(wxTreeItemId const&, bool, bool) ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
#11 0x00007ffff6fa9785 in wxGenericTreeCtrl::OnMouse(wxMouseEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
#12 0x00007ffff67a3012 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0                             
#13 0x00007ffff67a3793 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#14 0x00007ffff67a54f6 in wxEvtHandler::TryHereOnly(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#15 0x00007ffff67a557f in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#16 0x00007ffff67a5692 in wxEvtHandler::ProcessEvent(wxEvent&) ()
--Type <RET> for more, q to quit, c to continue without paging--
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#17 0x00007ffff6f95639 in wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
#18 0x00007ffff67a7183 in wxEvtHandler::SafelyProcessEvent(wxEvent&) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#19 0x00007ffff6d7e1c2 in ??? () at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
#20 0x00007ffff529d0a4 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#21 0x00007ffff60b72fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff60e690c in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff60d6ef2 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff60d77c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ffff60d7883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007ffff5566b64 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#27 0x00007ffff5403310 in ??? () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#28 0x00007ffff5403eaa in gtk_main_do_event () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#29 0x00007ffff613f407 in ??? () at /lib/x86_64-linux-gnu/libgdk-3.so.0
#30 0x00007ffff6198e2e in ??? () at /lib/x86_64-linux-gnu/libgdk-3.so.0
#31 0x00007ffff4e005b5 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007ffff4e5f717 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007ffff4e00f77 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007ffff53feb45 in gtk_main () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#35 0x00007ffff6d5ff35 in wxGUIEventLoop::DoRun() ()
    at /lib/x86_64-linux-gnu/libwx_gtk3u_core-3.2.so.0
#36 0x00007ffff66bff1a in wxEventLoopBase::Run() () at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#37 0x00007ffff66a238d in wxAppConsoleBase::MainLoop() ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#38 0x00007ffff66f94e0 in wxEntry(int&, wchar_t**) ()
    at /lib/x86_64-linux-gnu/libwx_baseu-3.2.so.0
#39 0x00005555555f0588 in main ()

In GQRX it just repeats No samples or timeout over and over in console after selecting and trying to start using the Mini 2.

[INFO] Make connection: 'LimeSDR Mini 1D90F834C97045'
[INFO] Reference clock 40.00 MHz
[INFO] Device name: LimeSDR-Mini_v2
[INFO] Reference: 40 MHz
[INFO] LMS7002M register cache: Disabled
[INFO] Sampling rate set(10.003 MHz): CGEN:320.104 MHz, Decim: 2^3, Interp: 2^3
[INFO] Sampling rate set(5.000 MHz): CGEN:640.000 MHz, Decim: 2^5, Interp: 2^5
[INFO] Rx LPF configured
[ERROR] No samples or timeout

Building the libLMS7Support.so and placing it within the modules0.8 directory and rerunning Cubic, GQRX, etc results in two entries of course in the list of devices. Selecting and using the entry that relates to LimeSuite (non NG) results in the applications working. I don’t know if any of this is helpful, but does seem like maybe an issue with NG’s Soapy?

limesuiteng plugin was missing some soapysdr deprecated functions implementations. Fixed now.

Closer, but possibly another missing function? After selection, it fails on setFrequency

[INFO] Sampling rate set(2.100 MHz): CGEN:268.800 MHz, Decim: 2^5, Interp: 2^5
terminate called after throwing an instance of 'std::runtime_error'
  what():  Soapy_limesuiteng::setFrequency(RF) unknown name

Thread 58 "CubicSDR" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffb37fe6c0 (LWP 157172)]
__pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)
    at ./nptl/pthread_kill.c:44
warning: 44     ./nptl/pthread_kill.c: No such file or directory

SigDigger starts and runs with the fft/waterfall getting data, I’ll look closer. GQRX still displays the following over and over when trying to run it

[ERROR] No samples or timeout

I added a return right after line 407 in Settings.cpp (right below this)
throw std::runtime_error(“Soapy_limesuiteng::setFrequency(RF) failed”);

That allowed Cubic to proceed, but the stream doesn’t start. I see this right after it mentions settings sample rate
[ERROR] LoadConfig() - file not found

The stream not starting in CubicSDR/GQRX reminds me of something that happened with a fork of SoapyAirspy at one point and the author mentioned why it was happening, but it’s been so long ago.

Something here maybe, except it’s not happening to SigDigger in this case.

Hi,
Just FYI, I think this is the same issue as this ticket I created a while back: Segfault using liblimesuiteng-legacyapi (stable branch) · Issue #123 · myriadrf/LimeSuiteNG · GitHub

@awdmesh I have been working on linking with LimeSuiteNG but the current showstoppers are missing LimeRFE API and lack of timestamps in the GNU Radio API which are needed for TDMA. I’d expect these issues will get ironed out in the following months. At the moment using the old gr-limesdr API with the -legacy library is not possible.

I have LimeSuite and LimeSuiteNG installed at the same time, wouldn’t gr-limesdr (the old one?) work in this manner? But then I suppose you can’t use the new XTRX card? I’ll go check out your ticket now.

In this case, I’m probably clogging up the forum with things that could be tickets. I’m just working my way through testing various aspects and I think currently it may just be that the NG Soapy implementation doesn’t have everything the LimeSuite implementation has. I can switch between the two soapy sources on the same machine to see the differences. I’m not linking an application against both, but rather letting soapy present me with each soapy module.

Linking qradiolink against just libLimeSuite will work fine regardless if you also have LimeSuiteNG installed or not.
It’s linking qradiolink against liblimesuiteng-legacyapi that won’t work currently. Linking against both libs would give you the necessary LimeRFE symbols but has the issues described in that ticket. Slowly working towards resolving these things.