Building Lime Suite from source on Windows

I tried to build Lime Suite from source on my Window 10 machine with Visual Studio 2015 by following the instructions of the Lime Suite wiki page of Myriad RF.

https://wiki.myriadrf.org/Lime_Suite

In addition to the dependencies listed in section 3.1.2, I installed the latest PothosSDR under C drive since it was required by cmake to specify SoapySDR_DIR.

cmake ../ -G "Visual Studio 14 2015 Win64" ^
    -DWX_ROOT_DIR=C:/wxWidgets-3.1.0 ^
    -DwxWidgets_ROOT_DIR=C:/wxWidgets-3.1.0 ^
    -DwxWidgets_LIB_DIR=C:/wxWidgets-3.1.0/lib/vc140_x64_lib ^
    -DFX3_SDK_PATH="C:/EZ-USB FX3 SDK/1.3" ^
    -DSoapySDR_DIR=C:/PothosSDR

However, when execute the cmake with the options described in the complete command line example in section 3.2.2, I got the following messages:

-- Could NOT find SoapySDR (missing: SoapySDR_DIR)

-- ######################################################
-- ## LimeSuite disabled features
-- ######################################################
--
 * SoapySDRLMS7, SoapySDR bindings for LMS7

Which directory path should I specify for SoapySDR_DIR to make the cmake find SoapySDR?

I’m also confused about the note that says " either install Lime Suite via a package/installer or source code and do not do both!"

The cmake requires the PothosSDR directory path for SoapySDR_DIR option. How can I set this option (and build and install Lime Suite from source) without installing Lime Suite via the PothosSDR installer?

The Windows installer is for the PothosSDR Development Environment, which packages the Pothos toolkit and GUI along with SoapySDR and a bunch of useful applications. SoapySDR is just one small part of it.

You can find the SoapySDR sources at:

Like the instructions say, installing the same parts from binaries and building them from source is discouraged, as this tends to just result in headaches when you can’t tell what is being picked up from where.

Andrew,

Thank you for your advice, but how can I tell the cmake about the location of SoapySDR source file? I had downloaded the set of source file and set SoapySDR_DIR parameter to point to it, but the result was the same. The cmake still could not find SoapySDR.

In the figure of cmake GUI example in the same Windows build instructions, the “SOAPY_SDR_LIBRARY” parameter is set to “C:/PothosSDR/lib/SoapySDR.lib” file. It is not included the SoapySDR source files and only found in the PothosSDR installation directory. This is why I thought the PothosSDR development environment was required.

My guess is that you will first need to build SoapySDR from source and then point SOAPY_SDR_LIBRARY at the resulting library.

I could build SoapySDR library from source but still have no luck on Lime Suite. The cmake still couldn’t find SoapySDR related files, and the build process failed with many errors and warnings.

Has anyone successfully built Lime Suite from source on Windows 10 with Visual Studio tools? I would like to test the PhaseAlignment branch of Lime Suite to obtain phase-coherent RX with SoapyLMS7.

1 Like

@osqzss,

I haven’t built LimeSuite from source for Win10, but I can tell you that in Linux (where I’ve built it more times than I can count on all my hands and feet) there is a definite sequence you have to build it to so the dependencies are picked up by the compiler. In Linux, I usually make sure that all the USB, gr-osmosdr, graphics driver, SoapySDR, and other ‘lib’ dependencies are there first - THEN I compile LimeSuite and it’ll all link. Case in point: last night I was setting up a machine there for Artful and had to have LimeSuite there, too. I had an issue with SoapySDR and LimeSuite wouldn’t compile right. It wasn’t until I recompiled SoapySDR and installed things then recompiled LimeSuite that it came up straight and ran fine. (On a side note this also happened to LimeGPS - - It wasn’t until I had LimeSuite installed right that it would compile right, too). I think the same would be true of LimeSuite for Windows because the compiler expects that certain dependencies to be in place and visible for the includes to be satisfied. So I would recommend that you install the USB, gr-osmosdr, graphics drivers (wx), SoapySDR and any of the dependencies that MyriadRF specifies for LimeSuite (see the LimeSDR Quick Start wiki and especially the section that deals with building LimeSuite from source).

On the flip, I think the LimeSDR team (Zydrunas, Ignas, Ricardas, etc) have done this because it is possible to get an .EXE file from this build…So they may be able to tell you, too - they have it written in the LimeSuite API guide how to do it, so they must have blazed that trail, too.

Keep us all advised on your progress, osqzss,

73 de Marty, KN0CK