Install LimeSuite from source

I’m getting this errors after successfully cmake …/
make -j4 gave me this

Do I need install some dependency package, system is alpine, I just want support true soapy wrapper to use LimeSDR USB with gr-osmosdr

~/LimeSuite/builddir $ make -j4
[ 5%] Building CXX object src/CMakeFiles/LimeSuite.dir/lms7002m/LMS7002M_parameters.cpp.o
[ 5%] Building CXX object src/CMakeFiles/LimeSuite.dir/lms7002m_mcu/MCU_File.cpp.o
[ 5%] Building CXX object src/CMakeFiles/LimeSuite.dir/ConnectionRegistry/ConnectionRegistry.cpp.o
[ 5%] Building CXX object src/CMakeFiles/LimeSuite.dir/lms7002m/LMS7002M_RegistersMap.cpp.o
[ 6%] Building CXX object src/CMakeFiles/LimeSuite.dir/lms7002m/LMS7002M.cpp.o
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp: In member function ‘void MCU_File::ReadHex(long unsigned int)’:
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp:340:21: error: ‘uint8_t’ was not declared in this scope
340 | uint8_t i = 0;
| ^~~~~~~
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp:4:1: note: ‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
3 | #include
+++ |+#include
4 |
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp:341:26: error: ‘i’ was not declared in this scope
341 | for (i = 0; uint8_t(i + 3) < count; ++i)
| ^
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp:346:28: error: ‘i’ was not declared in this scope
346 | header[i] = 0;
| ^
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp:382:30: error: ‘uint8_t’ was not declared in this scope
382 | for (i = uint8_t(type - ‘1’); uint8_t(i + 3) < count; ++i)
| ^~~~~~~
/home/otpisani/LimeSuite/src/lms7002m_mcu/MCU_File.cpp:382:30: note: ‘uint8_t’ is defined in header ‘’; did you forget to ‘#include ’?
make[2]: *** [src/CMakeFiles/LimeSuite.dir/build.make:118: src/CMakeFiles/LimeSuite.dir/lms7002m_mcu/MCU_File.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs…
make[1]: *** [CMakeFiles/Makefile2:312: src/CMakeFiles/LimeSuite.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

uint8_t and other similar types are defined in C standard header <stdint.h>, which is being included in the MCU_File.cpp file, so it’s strange that the header file is found, but the types from it are not found. You can try including <cstdint> header.

That error I get also trying to compile on Fedora 39 Server/workstation, but I’m not skilled with compiling, can you point me what I need to do exactly, this is officially path for compiling LimeSuite, what I need to add, thanks

cmake …/
make -j4
sudo make install
sudo ldconfig

It’s working fine on Fedora 40.
It might be related to a compiler version, I’ve encountered similar issue.

Try cmake ../ -DENABLE_SIMD_FLAGS=none, and make.

@ ricardas Can confirm that I’m still getting the same error on Fedora39, if you using or you tested on Fedora40, what additional library need to install before compiling, I have SoapySDR, libusb, python3-spidev, spi-tools and i2c-tools, something else

Also works with Fedora 39 workstation. These are my used commands:

sudo dnf install git cmake g++ libusb1-devel SoapySDR-devel
git clone https://github.com/myriadrf/LimeSuite
cd LimeSuite/build
cmake ../
make -j4
sudo make install
sudo ldconfig

@ricardas Thanks, now is working, but I have again the same error when I try to compiled version from master tag, when I manually pick tag branch [v23.11.0] and git clone that version I compiled lime suite like a charm.

Robin

@ricardas Sorry this is not necropost. I build LimeSuite on Fedora39, and things working, but I never try before running on Alpine. I manege to build LimeSutite successfully, same method, same version, but, card is getting numeration from OS, and I can see card with lsusb, but LimeUtil can’t see.

What can I do about it, can I " convince" LimeSuite with this command to recognize my device, what module need to enter for LimeSDR USB

LimeUtil --make=module=,serial=…

This is what LimeUtil --find show me

/home/otpisani/usbtop/build # LimeUtil --info
######################################################

LimeSuite information summary

######################################################

Version information:
Library version: v23.11.0-g9dce3b6a
Build timestamp: 2024-05-29
Interface version: v2023.11.0
Binary interface: 23.11-1

System resources:
Installation root: /usr/local
User home directory: /root
App data directory: /root/.local/share/LimeSuite
Config directory: /root/.limesuite
Image search paths:
- /root/.local/share/LimeSuite/images
- /usr/local/share/LimeSuite/images

Supported connections:

  • PCIEXillybus

It shows that LimeSuite was compiled without USB support. Perhaps “libusb-dev” package was not installed. Install it and recompile LimeSuite.

With more esoteric and minimal Linux distros such as this you need to make sure you can satisfy all the dependencies and if you do run into strange problems, we may not always be able to help.

Thanks. leave it open topic for a few days, didn’t have a time for playing. Ricardas doing great job here

Robin

@ricardas @andrewback I can confirm that LimeSDR now works on Alpine, I has also hardware issues in the mean wile with USB connector (bad design), always losing connection, so I need to find someone with 3D printer to build for me PVC fixer, so that connector won’t suffer in future, thanks for help;


Robin.