Topics

Issues Compiling on Debian 10 #install


pseudonoise@...
 

Hi as unfortuantely there is not a deb for Deian 10 any more  -Ih ave tried compiling Sdrangel for My Debian 10 installation.

I have followed Edouard's excellent instructions but I have hit a problem.

I only require support for the devices I have Pluto, AirSpy HF+ Discovery and rtlsdr dongles.  I only compiled the lbraries for these devices with no issues.

I then ran -
cd /opt/build
git clone https://github.com/f4exb/sdrangel.git
cd sdrangel
mkdir build; cd build
cmake -Wno-dev -DDEBUG_OUTPUT=ON -DRX_SAMPLE_24BIT=ON \
-DAIRSPYHF_DIR=/opt/install/libairspyhf \
-DRTLSDR_DIR=/opt/install/librtlsdr \
-DIIO_DIR=/opt/install/libiio \
-DCM256CC_DIR=/opt/install/cm256cc \
-DDSDCC_DIR=/opt/install/dsdcc \
-DSERIALDV_DIR=/opt/install/serialdv \
-DMBE_DIR=/opt/install/mbelib \
-DCODEC2_DIR=/opt/install/codec2 \
-DCMAKE_INSTALL_PREFIX=/opt/install/sdrangel ..
make -j4 install


I start getting errors at 57% (see output below) can anyone please advise what I'm doing wrong ?

Many thanks,

James G1PVZ

[ 57%] Building CXX object pluginssrv/samplesource/fcdpro/CMakeFiles/inputfcdprosrv.dir/fcdprothread.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/fcdpro/CMakeFiles/inputfcdprosrv.dir/inputfcdprosrv_autogen/mocs_compilation.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/fcdproplus/CMakeFiles/inputfcdproplussrv.dir/fcdproplusplugin.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/fcdproplus/CMakeFiles/inputfcdproplussrv.dir/fcdproplussettings.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/fcdproplus/CMakeFiles/inputfcdproplussrv.dir/fcdpropluswebapiadapter.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/fcdproplus/CMakeFiles/inputfcdproplussrv.dir/fcdproplusthread.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/fcdproplus/CMakeFiles/inputfcdproplussrv.dir/inputfcdproplussrv_autogen/mocs_compilation.cpp.o
Scanning dependencies of target inputsdrplaysrv
[ 57%] Building CXX object pluginssrv/samplesource/sdrplay/CMakeFiles/inputsdrplaysrv.dir/sdrplayinput.cpp.o
[ 57%] Building CXX object pluginssrv/samplesource/sdrplay/CMakeFiles/inputsdrplaysrv.dir/sdrplayplugin.cpp.o
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp: In member function ‘bool SDRPlayInput::openDevice()’:
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:103:37: error: ‘MIRISDR_HW_SDRPLAY’ was not declared in this scope
     if ((res = mirisdr_open(&m_dev, MIRISDR_HW_SDRPLAY, m_devNumber)) < 0)
                                     ^~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:103:37: note: suggested alternative: ‘MIRISDR_API’
     if ((res = mirisdr_open(&m_dev, MIRISDR_HW_SDRPLAY, m_devNumber)) < 0)
                                     ^~~~~~~~~~~~~~~~~~
                                     MIRISDR_API
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp: In member function ‘virtual bool SDRPlayInput::start()’:
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:153:13: error: ‘mirisdr_set_sample_format’ was not declared in this scope
  if ((res = mirisdr_set_sample_format(m_dev, s12FormatString))) // sample format S12
             ^~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:153:13: note: suggested alternative: ‘mirisdr_set_sample_rate’
  if ((res = mirisdr_set_sample_format(m_dev, s12FormatString))) // sample format S12
             ^~~~~~~~~~~~~~~~~~~~~~~~~
             mirisdr_set_sample_rate
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:171:13: error: ‘mirisdr_set_transfer’ was not declared in this scope
  if ((res = mirisdr_set_transfer(m_dev, bulkFormatString)) < 0)
             ^~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:171:13: note: suggested alternative: ‘mirisdr_reset_buffer’
  if ((res = mirisdr_set_transfer(m_dev, bulkFormatString)) < 0)
             ^~~~~~~~~~~~~~~~~~~~
             mirisdr_reset_buffer
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp: In member function ‘bool SDRPlayInput::applySettings(const SDRPlaySettings&, bool, bool)’:
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:416:35: error: ‘mirisdr_get_mixbuffer_gain’ was not declared in this scope
                         lnaGain = mirisdr_get_mixbuffer_gain(m_dev);
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:416:35: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                         lnaGain = mirisdr_get_mixbuffer_gain(m_dev);
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                   mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:420:35: error: ‘mirisdr_get_lna_gain’ was not declared in this scope
                         lnaGain = mirisdr_get_lna_gain(m_dev);
                                   ^~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:420:35: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                         lnaGain = mirisdr_get_lna_gain(m_dev);
                                   ^~~~~~~~~~~~~~~~~~~~
                                   mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:425:29: error: ‘mirisdr_get_mixer_gain’ was not declared in this scope
                             mirisdr_get_mixer_gain(m_dev),
                             ^~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:425:29: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                             mirisdr_get_mixer_gain(m_dev),
                             ^~~~~~~~~~~~~~~~~~~~~~
                             mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:426:29: error: ‘mirisdr_get_baseband_gain’ was not declared in this scope
                             mirisdr_get_baseband_gain(m_dev),
                             ^~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:426:29: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                             mirisdr_get_baseband_gain(m_dev),
                             ^~~~~~~~~~~~~~~~~~~~~~~~~
                             mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:447:29: error: ‘mirisdr_set_mixbuffer_gain’ was not declared in this scope
                     int r = mirisdr_set_mixbuffer_gain(m_dev, settings.m_lnaOn ? 0 : 1); // mirisdr_set_mixbuffer_gain takes gain reduction
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:447:29: note: suggested alternative: ‘mirisdr_set_tuner_gain’
                     int r = mirisdr_set_mixbuffer_gain(m_dev, settings.m_lnaOn ? 0 : 1); // mirisdr_set_mixbuffer_gain takes gain reduction
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~
                             mirisdr_set_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:457:29: error: ‘mirisdr_set_lna_gain’ was not declared in this scope
                     int r = mirisdr_set_lna_gain(m_dev, settings.m_lnaOn ? 0 : 1); // mirisdr_set_lna_gain takes gain reduction
                             ^~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:457:29: note: suggested alternative: ‘mirisdr_set_tuner_gain’
                     int r = mirisdr_set_lna_gain(m_dev, settings.m_lnaOn ? 0 : 1); // mirisdr_set_lna_gain takes gain reduction
                             ^~~~~~~~~~~~~~~~~~~~
                             mirisdr_set_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:474:25: error: ‘mirisdr_set_mixer_gain’ was not declared in this scope
                 int r = mirisdr_set_mixer_gain(m_dev, settings.m_mixerAmpOn ? 0 : 1); // mirisdr_set_lna_gain takes gain reduction
                         ^~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:474:25: note: suggested alternative: ‘mirisdr_set_tuner_gain’
                 int r = mirisdr_set_mixer_gain(m_dev, settings.m_mixerAmpOn ? 0 : 1); // mirisdr_set_lna_gain takes gain reduction
                         ^~~~~~~~~~~~~~~~~~~~~~
                         mirisdr_set_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:490:25: error: ‘mirisdr_set_baseband_gain’ was not declared in this scope
                 int r = mirisdr_set_baseband_gain(m_dev, settings.m_basebandGain);
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:490:25: note: suggested alternative: ‘mirisdr_set_tuner_gain’
                 int r = mirisdr_set_baseband_gain(m_dev, settings.m_basebandGain);
                         ^~~~~~~~~~~~~~~~~~~~~~~~~
                         mirisdr_set_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:505:27: error: ‘mirisdr_get_mixbuffer_gain’ was not declared in this scope
                 lnaGain = mirisdr_get_mixbuffer_gain(m_dev);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:505:27: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                 lnaGain = mirisdr_get_mixbuffer_gain(m_dev);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
                           mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:507:27: error: ‘mirisdr_get_lna_gain’ was not declared in this scope
                 lnaGain = mirisdr_get_lna_gain(m_dev);
                           ^~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:507:27: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                 lnaGain = mirisdr_get_lna_gain(m_dev);
                           ^~~~~~~~~~~~~~~~~~~~
                           mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:512:21: error: ‘mirisdr_get_mixer_gain’ was not declared in this scope
                     mirisdr_get_mixer_gain(m_dev),
                     ^~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:512:21: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                     mirisdr_get_mixer_gain(m_dev),
                     ^~~~~~~~~~~~~~~~~~~~~~
                     mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:513:21: error: ‘mirisdr_get_baseband_gain’ was not declared in this scope
                     mirisdr_get_baseband_gain(m_dev),
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:513:21: note: suggested alternative: ‘mirisdr_get_tuner_gain’
                     mirisdr_get_baseband_gain(m_dev),
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
                     mirisdr_get_tuner_gain
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:580:17: error: ‘mirisdr_set_bandwidth’ was not declared in this scope
         int r = mirisdr_set_bandwidth(m_dev, bandwidth);
                 ^~~~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:580:17: note: suggested alternative: ‘mirisdr_set_sample_rate’
         int r = mirisdr_set_bandwidth(m_dev, bandwidth);
                 ^~~~~~~~~~~~~~~~~~~~~
                 mirisdr_set_sample_rate
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:593:17: error: ‘mirisdr_set_if_freq’ was not declared in this scope
         int r = mirisdr_set_if_freq(m_dev, iFFrequency);
                 ^~~~~~~~~~~~~~~~~~~
/opt/build/sdrangel/plugins/samplesource/sdrplay/sdrplayinput.cpp:593:17: note: suggested alternative: ‘mirisdr_set_center_freq’
         int r = mirisdr_set_if_freq(m_dev, iFFrequency);
                 ^~~~~~~~~~~~~~~~~~~
                 mirisdr_set_center_freq
make[2]: *** [pluginssrv/samplesource/sdrplay/CMakeFiles/inputsdrplaysrv.dir/build.make:63: pluginssrv/samplesource/sdrplay/CMakeFiles/inputsdrplaysrv.dir/sdrplayinput.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
Scanning dependencies of target inputplutosdrsrv_autogen
[ 57%] Automatic MOC and UIC for target inputplutosdrsrv
[ 57%] Linking CXX shared library ../../../lib/pluginssrv/libinputfcdprosrv.so
[ 57%] Built target inputplutosdrsrv_autogen
Scanning dependencies of target inputrtlsdrsrv
[ 57%] Building CXX object pluginssrv/samplesource/rtlsdr/CMakeFiles/inputrtlsdrsrv.dir/rtlsdrinput.cpp.o
[ 57%] Built target inputfcdprosrv
Scanning dependencies of target inputkiwisdrsrv
[ 57%] Building CXX object pluginssrv/samplesource/kiwisdr/CMakeFiles/inputkiwisdrsrv.dir/kiwisdrinput.cpp.o
make[1]: *** [CMakeFiles/Makefile2:8519: pluginssrv/samplesource/sdrplay/CMakeFiles/inputsdrplaysrv.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 57%] Building CXX object pluginssrv/samplesource/kiwisdr/CMakeFiles/inputkiwisdrsrv.dir/kiwisdrplugin.cpp.o
[ 57%] Linking CXX shared library ../../../lib/pluginssrv/libinputfcdproplussrv.so
[ 58%] Building CXX object pluginssrv/samplesource/kiwisdr/CMakeFiles/inputkiwisdrsrv.dir/kiwisdrworker.cpp.o
[ 58%] Built target inputfcdproplussrv
[ 58%] Building CXX object pluginssrv/samplesource/kiwisdr/CMakeFiles/inputkiwisdrsrv.dir/kiwisdrsettings.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/rtlsdr/CMakeFiles/inputrtlsdrsrv.dir/rtlsdrplugin.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/kiwisdr/CMakeFiles/inputkiwisdrsrv.dir/kiwisdrwebapiadapter.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/kiwisdr/CMakeFiles/inputkiwisdrsrv.dir/inputkiwisdrsrv_autogen/mocs_compilation.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/rtlsdr/CMakeFiles/inputrtlsdrsrv.dir/rtlsdrsettings.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/rtlsdr/CMakeFiles/inputrtlsdrsrv.dir/rtlsdrwebapiadapter.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/rtlsdr/CMakeFiles/inputrtlsdrsrv.dir/rtlsdrthread.cpp.o
[ 58%] Building CXX object pluginssrv/samplesource/rtlsdr/CMakeFiles/inputrtlsdrsrv.dir/inputrtlsdrsrv_autogen/mocs_compilation.cpp.o
[ 58%] Linking CXX shared library ../../../lib/pluginssrv/libinputkiwisdrsrv.so
[ 58%] Built target inputkiwisdrsrv
[ 58%] Linking CXX shared library ../../../lib/pluginssrv/libinputrtlsdrsrv.so
[ 58%] Built target inputrtlsdrsrv
make: *** [Makefile:152: all] Error 2


Edouard Griffiths
 

Well if you do not compile wirh libmirisdr support then it should not request it later. So maybe there's stg.wrong with the cmake files.
Brgds, Edouard


pseudonoise@...
 

Thanks Edouard - unfortunately  not being a software engineer this doesn't really help me ;(

I tried compiling the libmirisdr support and trying again with similar results - if you could give me more advice I would be most grateful. I'm more than willing to learn and experiment to get Sdrangel on my Debian 10 pc.

thanks

James G1PVZ


Edouard Griffiths
 

Hi,

sudo apt-get remove libmirisdr-dev libmirisdr0
Then:
https://github.com/f4exb/sdrangel/wiki/Compile-from-source-in-Linux#sdrplay-rsp1

Brgds, Edouard.


pseudonoise@...
 

Dear Edouard,

Managed to compile and Sdrangel is working on RTLSDR anf Airspy HF+ on my Debain 10 box :)

Will test with my ethernet connected QO-100 configured Pluto later.

Many thanks for the program and help Edouard !

Best regards,

James G1PVZ

For those interested this is what I did -

$ sudo apt-get remove libmirisdr-dev libmirisdr0

After running this command my gqrx install was broken so I did the following

$ sudo apt-get install libgnuradio-osmosdr0.1.4

This allowed gqrx to run.

I then deleted the /opt/build/sdrangel directory

then I ran

cd /opt/build
git clone https://github.com/f4exb/sdrangel.git
cd sdrangel
mkdir build; cd build
cmake -Wno-dev -DDEBUG_OUTPUT=ON -DRX_SAMPLE_24BIT=ON \
-DAIRSPYHF_DIR=/opt/install/libairspyhf \
-DRTLSDR_DIR=/opt/install/librtlsdr \
-DIIO_DIR=/opt/install/libiio \
-DCM256CC_DIR=/opt/install/cm256cc \
-DDSDCC_DIR=/opt/install/dsdcc \
-DSERIALDV_DIR=/opt/install/serialdv \
-DMBE_DIR=/opt/install/mbelib \
-DCODEC2_DIR=/opt/install/codec2 \
-DCMAKE_INSTALL_PREFIX=/opt/install/sdrangel ..
make -j4 install

To launch the program -

/opt/install/sdrangel/bin/sdrangel





cessnacitation10@...
 

Hello all,

I am trying this right now with an Airspy HF+ Discovery in Debian 10 (both stable and testing branches as well as Ubuntu20.04+deb package) and am not able to get it to receive or display a signal.

There are no errors during compile. Udev rules are install correctly.

I don't see any error messages in the terminal, it just doesn't display anything in the FFT window/GUI and no audio from a demodulator. Is there a known incompatibility w/ this device?

GQRX works just fine with this dongle on the same system. SDRangel in Win10 also works.

Curtis


Edouard Griffiths
 

Hello,

this has been reported already (by me originally when I upgraded to Ubuntu 20.04): https://github.com/f4exb/sdrangel/issues/600
Unfortunately it still remains a mystery.

Brgds,
Edouard.


cessnacitation10@...
 

I tried this yet again after some recent kernel updates with no success. This time I did notice though that a few data frames do get through. The waterfall and fft both show signal was processed but only a fraction of a second's worth. It then freezes. Every time I stop and the restart the device, it grabs a few more frames and then freezes again.

I also tried this on a Ubuntu 18.04 install and get the same results. This is surprising given my understanding is that it worked just fine on 18.04.


Edouard Griffiths
 

Add -DENABLE_MIRISDR=OFF to the cmake options

Brgds,
Edouard.