pothosware / SoapyRemote

Use any Soapy SDR remotely
https://github.com/pothosware/SoapyRemote/wiki
Boost Software License 1.0
120 stars 22 forks source link

SoapySDRServer segfault #26

Closed Geremia closed 6 years ago

Geremia commented 7 years ago

Using the Osmocom source block with Soapy Remote, I sometimes get a segfault:

Here is what GNUradio says:

gr-osmosdr v0.1.x-xxx-xunknown (0.1.5git) gnuradio 3.7.8.1
built-in source types: file fcd rtl_tcp sdrplay rfspace soapy redpitaya 
[INFO] SoapyRemote::setupRxStream(remoteFormat=CS16, localFormat=CF32, scaleFactor=32767, mtu=1500, window=44040192)
[INFO] Client side stream bound to <CLIENT's IP>:47903
[INFO] Client side status bound to <CLIENT's IP>:45892
[INFO] Using format CS16.
[INFO] Server side stream bound to [::ffff:<SERVER's IP>]:48810
[INFO] Server side stream connected to [::ffff:<CLIENT's IP>]:47903
[INFO] Server side status connected to [::ffff:<CLIENT's IP>]:45892
[INFO] Configured sender endpoint: dgram=1452 bytes, 357 elements @ 4 bytes, window=43008 KiB
[INFO] Client side stream connected to <SERVER's IP>:48810
[INFO] Configured receiver endpoint: dgram=1452 bytes, 357 elements @ 4 bytes, window=43008 KiB
[WARNING] Set thread priority 0.5 failed: Operation not permitted
Using Volk machine: avx_64_mmx_orc
[ERROR] SoapyLogAcceptor::handlerLoop() 
thread[thread-per-block[0]: <block soapy_source_c (2)>]: SoapyRPCUnpacker::recv(header) FAIL: 

Here is what the remote server running SoapySDRServer says right before it segfaults:

mir_sdr_usb_GetDevices Dev0:vid=1df7 pid=2500 rev=0206 serno=B0001P0004 bus=001 port=004 devAvail=1
mir_sdr_usb_SetDeviceIdx idx=0 numDevices=1
Opened device with idVendor = 0x1df7 idProduct = 0x2500 fwVersion = 0x0206 busNum = 001 portNum = 004
mir_sdr_DCoffsetIQimbalanceControl: DC:1 IQ:1
mir_sdr_AgcControl: 1 -30 0 0 0 0 1
mir_sdr_StreamInit()
mir_sdr_Init: starting hardware initialization
mir_sdr_Init: gR=20dB fs=7.000MHz rf=479.000MHz bw=6.000MHz if=0.000MHz
DownConvert: Enable=0 DecM=1 OutScale=0 (fs=7.000000 bw=6000 if=0)
mir_sdr_usb_USB DLL: Revision 0.1.1
mir_sdr_2500_Init: fnaddr = 2 detected, trying to change...
mir_sdr_2500_Init: fnaddr = 6
mir_sdr_2500_Init: adjusting squelch trim 0x1, rx gating enable 1, tx_trim 0, reg2 = 0x4801
initHw: Register7 = 0x000085
initRfFreqDependentHw(1): Tuner Register0 = 0x057480
Error: libusb_submit_transfer() -1
mir_sdr_2500_StreamInit: Open failed
initHw: mir_sdr_2500_StreamInit() Error 0x00000001
mir_sdr_Init: initHw returns error 7

Is this because the server cannot keep up with the requested sample rate?

rrobinett commented 6 years ago

Sorry that I've been too busy to test, but I will try in the next several days. Thanks

Strykar commented 6 years ago

@SDRplay fix works! CubicSDR can now receive data, though anything over 1 Mhz seems to be too much.

SDRplay commented 6 years ago

If you've still got debug enabled that will be a problem. Also, 16bit I/Q data will be quite bandwidth hungry at higher sample rates. If the library supports it, you might try 8 bit mode. May @vsonnier can confirm whether that is supported. To be honest remote data is really only suitable for small bandwidths on any system.

Strykar commented 6 years ago

@SDRplay Debug is disabled in head now, so it isn't enabled. I have a 1Gbit Ethernet connection, how much bandwidth do we need? Is this an issue of network bandwidth or small SBC's being unable to stuff that bandwidth without dedicated PHY's like RPi?

SDRplay commented 6 years ago

Most SBCs like the Raspberry Pi have an inherent problem because ALL of the peripheral data is shared on the USB bus including the network port. I'm not sure about the Odroid. I've backed a new SBC on kickstarter (https://www.kickstarter.com/projects/librecomputer/libre-computer-board-tritium-sbc-linux-android-7-n) that doesn't have this shared bandwidth which I hope to receive in the next couple of months and I'll be able to gather some data on throughput. You'll also need to consider the processing requirement and the latency huge sample rates will create. It may be worth seeing if there are any options you can use in SoapyRemote to change the CPU vs bandwidth - maybe @guruofquality or @vsonnier can comment? What sort of sample rate were you expecting?

Strykar commented 6 years ago

The Odroid has a dedicated PHY and does not share the bus with USB devices, it's one of the reasons I chose it, along with boatloads more CPU power over the RPi. I can understand latency being an issue, and am happy to work within these limits. TBH, looking at https://libre.computer/products/boards/all-h3-cc/ I don't see how this is faster than an Odroid, it even has just 100 Mbit LAN?

Speaking of CPU, I'm awaiting delivery of an all Aluminum case for the Odroid, perhaps that can help with thermal throttling running GQRX and accessing it via remote X. If not, this might a better option: https://www.notebookcheck.net/Benchmarks-for-the-Intel-Hades-Canyon-NUC-with-Core-i7-8809G-CPU-and-RX-Vega-M-GPU-leak-out.287220.0.html

vsonnier commented 6 years ago

@Strykar you can try CS16 format (the most compact one) and tuning the MTU among other things: remote_settings Don't get too excited by the 8Mhz sample rate, it is just a localhost test :)

rrobinett commented 6 years ago

I am finally able to resume work on this.

Because my original Pi environment was corrupted I flashed the latest raspberian and am trying to cleanly build Soapy following the instructions of @vsonnier, but I get errors, first in:

cmake .. -DCMAKE_BUILD_TYPE=Debug

Then when I execute cmake :

pi@raspberrypi:~/SoapySDRPlay $ git checkout -b master origin/master

fatal: A branch named 'master' already exists. pi@raspberrypi:~/SoapySDRPlay $ mkdir build pi@raspberrypi:~/SoapySDRPlay $ cmake .. -DCMAKE_BUILD_TYPE=Debug CMake Error: The source directory "/home/pi" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI. pi@raspberrypi:~/SoapySDRPlay $ cd build/ pi@raspberrypi:~/SoapySDRPlay/build $ cmake .. -DCMAKE_BUILD_TYPE=Debug -- The CXX compiler identification is GNU 6.3.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Error at CMakeLists.txt:7 (find_package): Could not find a package configuration file provided by "SoapySDR" (requested version 0.4.0) with any of the following names:

SoapySDRConfig.cmake
soapysdr-config.cmake

Add the installation prefix of "SoapySDR" to CMAKE_PREFIX_PATH or set "SoapySDR_DIR" to a directory containing one of the above files. If "SoapySDR" provides a separate development package or SDK, be sure it has been installed.

-- Configuring incomplete, errors occurred! See also "/home/pi/SoapySDRPlay/build/CMakeFiles/CMakeOutput.log". pi@raspberrypi:~/SoapySDRPlay/build $

What am I doing wrong?

guruofquality commented 6 years ago

It cant find SoapySDR development files. Did you install SoapySDR? if so can you share the output of make install?

rrobinett commented 6 years ago

No. I confess I am lost in the web site looking for instructions on how to set up this whole development environment

On Mon, Mar 19, 2018 at 9:36 PM, Josh Blum notifications@github.com wrote:

It cant find SoapySDR development files. Did you install SoapySDR? if so can you share the output of make install?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pothosware/SoapyRemote/issues/26#issuecomment-374471832, or mute the thread https://github.com/notifications/unsubscribe-auth/AgoIZDoKgFKH1DtRtiBM6GsdtOtLV5Fzks5tgIdTgaJpZM4LbUCD .

-- Rob Robinett rob@robinett.us

rrobinett commented 6 years ago

So here is the output:

pi@raspberrypi:~/SoapySDR-master/bulid $ sudo make install [ 68%] Built target SoapySDR [ 81%] Built target SoapySDRUtil [ 87%] Built target TestTimeConversion [ 93%] Built target TestFormatParser [100%] Built target TestKwargsMarkup Install the project... -- Install configuration: "Release" -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRConfig.cmake -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRUtil.cmake -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRConfigVersion.cmake -- Installing: /usr/local/include/SoapySDR -- Installing: /usr/local/include/SoapySDR/Device.h -- Installing: /usr/local/include/SoapySDR/Version.hpp -- Installing: /usr/local/include/SoapySDR/ConverterPrimatives.hpp -- Installing: /usr/local/include/SoapySDR/Errors.h -- Installing: /usr/local/include/SoapySDR/Logger.hpp -- Installing: /usr/local/include/SoapySDR/Time.hpp -- Installing: /usr/local/include/SoapySDR/Types.hpp -- Installing: /usr/local/include/SoapySDR/Modules.hpp -- Installing: /usr/local/include/SoapySDR/ConverterRegistry.hpp -- Installing: /usr/local/include/SoapySDR/Config.h -- Installing: /usr/local/include/SoapySDR/Registry.hpp -- Installing: /usr/local/include/SoapySDR/Formats.hpp -- Installing: /usr/local/include/SoapySDR/Config.hpp -- Installing: /usr/local/include/SoapySDR/Errors.hpp -- Installing: /usr/local/include/SoapySDR/Modules.h -- Installing: /usr/local/include/SoapySDR/Types.h -- Installing: /usr/local/include/SoapySDR/Time.h -- Installing: /usr/local/include/SoapySDR/Device.hpp -- Installing: /usr/local/include/SoapySDR/Version.h -- Installing: /usr/local/include/SoapySDR/Logger.h -- Installing: /usr/local/include/SoapySDR/Constants.h -- Installing: /usr/local/include/SoapySDR/Formats.h -- Installing: /usr/local/lib/libSoapySDR.so.0.7.0 -- Installing: /usr/local/lib/libSoapySDR.so.0.7 -- Installing: /usr/local/lib/libSoapySDR.so -- Installing: /usr/local/lib/pkgconfig/SoapySDR.pc -- Installing: /usr/local/bin/SoapySDRUtil -- Set runtime path of "/usr/local/bin/SoapySDRUtil" to "" -- Installing: /usr/local/share/man/man1/SoapySDRUtil.1 pi@raspberrypi:~/SoapySDR-master/bulid $ SoapySDRUtil --info SoapySDRUtil: error while loading shared libraries: libSoapySDR.so.0.7: cannot open shared object file: No such file or directory pi@raspberrypi:~/SoapySDR-master/bulid $ sudo ldconfig pi@raspberrypi:~/SoapySDR-master/bulid $ SoapySDRUtil --info ######################################################

Soapy SDR -- the SDR abstraction library

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

Lib Version: v0.7.0-unknown API Version: v0.7.0 ABI Version: v0.7 Install root: /usr/local Search path: /usr/local/lib/SoapySDR/modules0.7 No modules found! Available factories... No factories found! Available converters...

vsonnier commented 6 years ago

@rrobinett The problem may comes from

fatal: A branch named 'master' already exists.

And a lack of the Soapy dependencies, like in #35.

So: Delete all the SoapySDR , SoapySDRPlay, SoapyRemote directories, (if any) and do the following:

git clone https://github.com/pothosware/SoapySDR.git
git clone https://github.com/pothosware/SoapySDRPlay.git
git clone https://github.com/pothosware/SoapyRemote.git
cd SoapySDR
mkdir build
cd build
cmake ..
make -j4
make install
ldconfig
cd ..
cd ..
# Now we build the SDRPlay module for Soapy
cd SoapySDRPlay
mkdir build
cd build
cmake ..
make
make install
cd ..
cd ..
# And we build SoapyRemote
cd SoapyRemote
mkdir build
cd build
#cmake ..
cmake .. -DCMAKE_BUILD_TYPE=Release
make
make install
cd ..
cd ..

From @loughkb scripts. And you need to be root I think to execute them (for the ldconfig part I assume)

rrobinett commented 6 years ago

Thanks for those clear instructions. Unfortunately my build attempt fails at the same place:

pi@raspberrypi:~ $ rm -rf SoapySDR* pi@raspberrypi:~ $ git clone https://github.com/pothosware/SoapySDR.git Cloning into 'SoapySDR'... remote: Counting objects: 7096, done. remote: Total 7096 (delta 0), reused 0 (delta 0), pack-reused 7096 Receiving objects: 100% (7096/7096), 3.47 MiB | 2.48 MiB/s, done. Resolving deltas: 100% (5615/5615), done. pi@raspberrypi:~ $ git clone https://github.com/pothosware/SoapySDRPlay.git Cloning into 'SoapySDRPlay'... remote: Counting objects: 376, done. remote: Compressing objects: 100% (15/15), done. remote: Total 376 (delta 11), reused 13 (delta 6), pack-reused 355 Receiving objects: 100% (376/376), 107.82 KiB | 0 bytes/s, done. Resolving deltas: 100% (248/248), done. pi@raspberrypi:~ $ git clone https://github.com/pothosware/SoapyRemote.git Cloning into 'SoapyRemote'... remote: Counting objects: 1791, done. remote: Compressing objects: 100% (35/35), done. remote: Total 1791 (delta 26), reused 31 (delta 16), pack-reused 1740 Receiving objects: 100% (1791/1791), 479.39 KiB | 0 bytes/s, done. Resolving deltas: 100% (1300/1300), done. pi@raspberrypi:~ $ cd SoapySDR pi@raspberrypi:~/SoapySDR $ mkdir build pi@raspberrypi:~/SoapySDR $ cd build pi@raspberrypi:~/SoapySDR/build $ cmake .. -- The C compiler identification is GNU 6.3.0 -- The CXX compiler identification is GNU 6.3.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Build type not specified: defaulting to release. -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

-- ############################################# -- ## Begin configuration for Python support... -- ############################################# -- Enabling optional Python bindings if possible... -- Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR) -- SWIG_FOUND: FALSE - -- Found PythonInterp: /usr/bin/python (found version "2.7.13") -- PYTHONINTERP_FOUND: TRUE - 2.7.13 -- PYTHON_EXECUTABLE: /usr/bin/python -- PYTHON_INSTALL_DIR: ${prefix}/lib/python2.7/dist-packages -- Found PythonLibs: /usr/lib/arm-linux-gnueabihf/libpython2.7.so (found version "2.7.13") -- PYTHONLIBS_FOUND: TRUE - 2.7.13 -- PYTHON_INCLUDE_DIRS: /usr/include/python2.7 -- PYTHON_LIBRARIES: /usr/lib/arm-linux-gnueabihf/libpython2.7.so -- Performing Test SIZE_T_IS_UNSIGNED_INT -- Performing Test SIZE_T_IS_UNSIGNED_INT - Success

-- ############################################# -- ## Begin configuration for Python3 support... -- ############################################# -- Enabling optional Python3 bindings if possible... -- Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR) -- SWIG_FOUND: FALSE - -- Found Python3Interp: /usr/bin/python3 -- Could NOT find Python3InterpDbg (missing: PYTHON3_DBG_EXECUTABLE) -- PYTHON3INTERP_FOUND: TRUE -- PYTHON3_EXECUTABLE: /usr/bin/python3 -- PYTHON3_INSTALL_DIR: ${prefix}/lib/python3/dist-packages -- Found Python3Libs: /usr/lib/arm-linux-gnueabihf/libpython3.5m.so -- PYTHON3LIBS_FOUND: TRUE -- PYTHON3_INCLUDE_DIRS: /usr/include/python3.5m -- PYTHON3_LIBRARIES: /usr/lib/arm-linux-gnueabihf/libpython3.5m.so

-- ###################################################### -- ## SoapySDR enabled features -- ######################################################

-- ###################################################### -- ## SoapySDR disabled features -- ######################################################

-- SoapySDR version: v0.7.0-g824d83e8 -- ABI/so version: v0.7 -- Install prefix: /usr/local -- Configuring done -- Generating done -- Build files have been written to: /home/pi/SoapySDR/build pi@raspberrypi:~/SoapySDR/build $ make -j4 Scanning dependencies of target SoapySDR [ 9%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Device.cpp.o [ 9%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Registry.cpp.o [ 9%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Types.cpp.o [ 12%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Factory.cpp.o [ 15%] Building CXX object lib/CMakeFiles/SoapySDR.dir/NullDevice.cpp.o [ 18%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Logger.cpp.o [ 21%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Errors.cpp.o [ 25%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Formats.cpp.o [ 28%] Building CXX object lib/CMakeFiles/SoapySDR.dir/ConverterRegistry.cpp.o [ 31%] Building CXX object lib/CMakeFiles/SoapySDR.dir/DefaultConverters.cpp.o [ 34%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Modules.cpp.o [ 37%] Building CXX object lib/CMakeFiles/SoapySDR.dir/Version.cpp.o [ 40%] Building CXX object lib/CMakeFiles/SoapySDR.dir/TypesC.cpp.o [ 43%] Building CXX object lib/CMakeFiles/SoapySDR.dir/ModulesC.cpp.o [ 46%] Building CXX object lib/CMakeFiles/SoapySDR.dir/VersionC.cpp.o [ 50%] Building CXX object lib/CMakeFiles/SoapySDR.dir/DeviceC.cpp.o [ 53%] Building CXX object lib/CMakeFiles/SoapySDR.dir/FactoryC.cpp.o [ 56%] Building CXX object lib/CMakeFiles/SoapySDR.dir/LoggerC.cpp.o [ 59%] Building CXX object lib/CMakeFiles/SoapySDR.dir/TimeC.cpp.o [ 62%] Building CXX object lib/CMakeFiles/SoapySDR.dir/ErrorsC.cpp.o [ 65%] Building CXX object lib/CMakeFiles/SoapySDR.dir/FormatsC.cpp.o [ 68%] Linking CXX shared library libSoapySDR.so [ 68%] Built target SoapySDR Scanning dependencies of target SoapySDRUtil Scanning dependencies of target TestTimeConversion Scanning dependencies of target TestFormatParser Scanning dependencies of target TestKwargsMarkup [ 71%] Building CXX object tests/CMakeFiles/TestTimeConversion.dir/TestTimeConversion.cpp.o [ 75%] Building CXX object apps/CMakeFiles/SoapySDRUtil.dir/SoapySDRUtil.cpp.o [ 78%] Building CXX object tests/CMakeFiles/TestFormatParser.dir/TestFormatParser.cpp.o [ 81%] Building CXX object tests/CMakeFiles/TestKwargsMarkup.dir/TestKwargsMarkup.cpp.o [ 84%] Linking CXX executable TestTimeConversion [ 84%] Built target TestTimeConversion [ 87%] Building CXX object apps/CMakeFiles/SoapySDRUtil.dir/SoapySDRProbe.cpp.o [ 90%] Linking CXX executable TestFormatParser [ 90%] Built target TestFormatParser [ 93%] Building CXX object apps/CMakeFiles/SoapySDRUtil.dir/SoapyRateTest.cpp.o [ 96%] Linking CXX executable TestKwargsMarkup [ 96%] Built target TestKwargsMarkup [100%] Linking CXX executable SoapySDRUtil [100%] Built target SoapySDRUtil pi@raspberrypi:~/SoapySDR/build $ make install [ 68%] Built target SoapySDR [ 81%] Built target SoapySDRUtil [ 87%] Built target TestTimeConversion [ 93%] Built target TestFormatParser [100%] Built target TestKwargsMarkup Install the project... -- Install configuration: "Release" -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRConfig.cmake CMake Error at cmake_install.cmake:36 (file): file INSTALL cannot copy file "/home/pi/SoapySDR/cmake/Modules/SoapySDRConfig.cmake" to "/usr/local/share/cmake/SoapySDR/SoapySDRConfig.cmake".

Makefile:72: recipe for target 'install' failed make: *** [install] Error 1 pi@raspberrypi:~/SoapySDR/build $ sudo make install [ 68%] Built target SoapySDR [ 81%] Built target SoapySDRUtil [ 87%] Built target TestTimeConversion [ 93%] Built target TestFormatParser [100%] Built target TestKwargsMarkup Install the project... -- Install configuration: "Release" -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRConfig.cmake -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRUtil.cmake -- Installing: /usr/local/share/cmake/SoapySDR/SoapySDRConfigVersion.cmake -- Up-to-date: /usr/local/include/SoapySDR -- Installing: /usr/local/include/SoapySDR/Device.h -- Installing: /usr/local/include/SoapySDR/Version.hpp -- Installing: /usr/local/include/SoapySDR/ConverterPrimatives.hpp -- Installing: /usr/local/include/SoapySDR/Errors.h -- Installing: /usr/local/include/SoapySDR/Logger.hpp -- Installing: /usr/local/include/SoapySDR/Time.hpp -- Installing: /usr/local/include/SoapySDR/Types.hpp -- Installing: /usr/local/include/SoapySDR/Modules.hpp -- Installing: /usr/local/include/SoapySDR/ConverterRegistry.hpp -- Installing: /usr/local/include/SoapySDR/Config.h -- Installing: /usr/local/include/SoapySDR/Registry.hpp -- Installing: /usr/local/include/SoapySDR/Formats.hpp -- Installing: /usr/local/include/SoapySDR/Config.hpp -- Installing: /usr/local/include/SoapySDR/Errors.hpp -- Installing: /usr/local/include/SoapySDR/Modules.h -- Installing: /usr/local/include/SoapySDR/Types.h -- Installing: /usr/local/include/SoapySDR/Time.h -- Installing: /usr/local/include/SoapySDR/Device.hpp -- Installing: /usr/local/include/SoapySDR/Version.h -- Installing: /usr/local/include/SoapySDR/Logger.h -- Installing: /usr/local/include/SoapySDR/Constants.h -- Installing: /usr/local/include/SoapySDR/Formats.h -- Installing: /usr/local/lib/libSoapySDR.so.0.7.0 -- Up-to-date: /usr/local/lib/libSoapySDR.so.0.7 -- Up-to-date: /usr/local/lib/libSoapySDR.so -- Installing: /usr/local/lib/pkgconfig/SoapySDR.pc -- Installing: /usr/local/bin/SoapySDRUtil -- Set runtime path of "/usr/local/bin/SoapySDRUtil" to "" -- Installing: /usr/local/share/man/man1/SoapySDRUtil.1 pi@raspberrypi:~/SoapySDR/build $ sudo ldconfig pi@raspberrypi:~/SoapySDR/build $ cd ../.. pi@raspberrypi:~ $ cd SoapySDRPlay/ pi@raspberrypi:~/SoapySDRPlay $ mkdir build pi@raspberrypi:~/SoapySDRPlay $ cd build pi@raspberrypi:~/SoapySDRPlay/build $ cmake .. -- The CXX compiler identification is GNU 6.3.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Build type not specified: defaulting to release. -- libsdrplay not found. CMake Error at CMakeLists.txt:16 (message): SDRPlay development files not found...

-- Configuring incomplete, errors occurred! See also "/home/pi/SoapySDRPlay/build/CMakeFiles/CMakeOutput.log". pi@raspberrypi:~/SoapySDRPlay/build $

On Mon, Mar 19, 2018 at 10:57 PM, Vincent Sonnier notifications@github.com wrote:

@rrobinett https://github.com/rrobinett The problem comes from

fatal: A branch named 'master' already exists.

Delete all the SoapySDR , SoapySDRPlay, SoapyRemote directories, and do the following:

git clone https://github.com/pothosware/SoapySDR.git git clone https://github.com/pothosware/SoapySDRPlay.git git clone https://github.com/pothosware/SoapyRemote.git cd SoapySDR mkdir build cd build cmake .. make -j4 make install ldconfig cd .. cd ..

Now we build the SDRPlay module for Soapy

cd SoapySDRPlay mkdir build cd build cmake .. make make install cd .. cd ..

And we build SoapyRemote

cd SoapyRemote mkdir build cd build

cmake ..

cmake .. -DCMAKE_BUILD_TYPE=Release make make install cd .. cd ..

(From @loughkb https://github.com/loughkb scripts)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pothosware/SoapyRemote/issues/26#issuecomment-374485164, or mute the thread https://github.com/notifications/unsubscribe-auth/AgoIZKMl4LnLNSBGIsnsltBVSPPvSqdZks5tgJpbgaJpZM4LbUCD .

-- Rob Robinett rob@robinett.us

rrobinett commented 6 years ago

Sorry, I was building on a fresh raspberrian OS and had failed to download and install the SDRPlay driver from their site. Having done that I have been able to build and run SDRServer.

However I do get some compile warning messages and I am missing the Avanhi library. How do I get that?

thanks

=============== -- Looking for include file fcntl.h - found -- Could NOT find Avahi (missing: AVAHI_LIBRARY-COMMON AVAHI_LIBRARY-CLIENT AVAHI_INCLUDE_DIR) CMake Warning at common/CMakeLists.txt:46 (message): Cannot find Avahi client development files:Avahi is recommended for device discovery over mDNS.Please install libavahi-client-dev or equivalent.

SDRplay commented 6 years ago

That's an optional library. As the note says, install libavahi...

sudo apt-get install libavahi-client-dev

guruofquality commented 6 years ago

So it looks like this bug got sorted out in soapysdrplay. Its quite a long issue that this point, and it wasn't really an issue for the SoapyRemote codebase. I'm going to close it out. Thanks for everyones help in tracking this down!