Hi Steve,

On 7/24/24 5:44 PM, Steve Hageman wrote:
I need a pointer to figure out the issue here.

I have two GNU Radio Installs for my Windows 10 system,

    1) Pathos (Latest running GNURadio 3.9.2.0 with Python 3.9.13)

    2) Radioconda (Latest, running GNURadio 3.10.10 with Python 3.11.9)

Both are installed in their own spaces and both run OK.

This may be where the issues are coming from. In the past I've seen problems with a Pothos installation interfering with radioconda because Pothos does something which gives its libraries priority on the search path. So it might seem like they are separate environments, but really you could be running mostly radioconda but with some Pothos libraries taking precedence. That might mostly work, until it doesn't.



I have a simple Soapy SDR flowgraph using the RTLSDR block (attached)

Using Pathos it works, but there are some load errors in the console when run (see below)

    Executing:
    C:\Users\steve\AppData\Local\Programs\Python\Python39\python.exe -u
    
C:\Users\steve\Documents\GNU_Radio_Projects\Cookbook\RTL_SDR_SETUP\RTL_SDR_Soapy_Setup.py

    [ERROR] SoapySDR::loadModule(C:\Program
    Files\PothosSDR/lib/SoapySDR/modules0.8/uhdSupport.dll)
       LoadLibrary() failed: The specified procedure could not be found.
    
    Found Rafael Micro R820T/2 tuner
    [INFO] Opening Generic RTL2832U OEM :: 00000001...
    Found Rafael Micro R820T/2 tuner
    gr::log :ERROR: pagesize - no info; setting pagesize = 4096
    [INFO] Using format CF32.
    Allocating 15 (non-zero-copy) user-space buffers


*The real issue is with Radioconda, the flowgraph fails with these errors when trying to run (See below) - any ideas what the issue is and can I fix it?*

(If I use the OSCOM RTLSDR source block both Pathos and Radioconda run without issue).

    Executing: C:\Users\steve\radioconda\python.exe -u
    
C:\Users\steve\Documents\GNU_Radio_Projects\Cookbook\RTL_SDR_SETUP\RTL_SDR_Soapy_Setup.py

    [ERROR]
    
SoapySDR::loadModule(C:\Users\steve\radioconda\Library/lib/SoapySDR/modules0.8/HackRFSupport.dll)
       LoadLibrary() failed: The specified procedure could not be found.
    
    [ERROR]
    
SoapySDR::loadModule(C:\Users\steve\radioconda\Library/lib/SoapySDR/modules0.8/LMS7Support.dll)
       LoadLibrary() failed: The specified procedure could not be found.
    
    [ERROR]
    
SoapySDR::loadModule(C:\Users\steve\radioconda\Library/lib/SoapySDR/modules0.8/rtlsdrSupport.dll)
       LoadLibrary() failed: The specified procedure could not be found.
    
    [ERROR]
    
SoapySDR::loadModule(C:\Users\steve\radioconda\Library/lib/SoapySDR/modules0.8/uhdSupport.dll)
       LoadLibrary() failed: The specified procedure could not be found.
    
    Traceback (most recent call last):
       File
    
"C:\Users\steve\Documents\GNU_Radio_Projects\Cookbook\RTL_SDR_SETUP\RTL_SDR_Soapy_Setup.py",
 line 231, in <module>
         main()
       File
    
"C:\Users\steve\Documents\GNU_Radio_Projects\Cookbook\RTL_SDR_SETUP\RTL_SDR_Soapy_Setup.py",
 line 209, in main
         tb = top_block_cls()
              ^^^^^^^^^^^^^^^
       File
    
"C:\Users\steve\Documents\GNU_Radio_Projects\Cookbook\RTL_SDR_SETUP\RTL_SDR_Soapy_Setup.py",
 line 97, in __init__
         self.soapy_rtlsdr_source_0 = soapy.source(dev, "fc32", 1, '',
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    RuntimeError: SoapySDR::Device::make() no match


The "LoadLibrary() failed: The specified procedure could not be found." errors are definitely indicative of problems stemming from an incompatible library being loaded instead of the one that is intended. It might be that these Soapy module libraries from radioconda are loading a main Soapy library (or one of its dependencies) from Pothos or elsewhere on your system.

The cleanest way to confirm that as a cause would be to uninstall Pothos. If that works, then it would be a question of finding out why exactly a Pothos library is taking precedence over a radioconda one when radioconda should have PATH priority when its environment is activated.

Cheers,
Ryan

Reply via email to