[osmocom-analog] Unable to compile with SoapySDR

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/osmocom-analog@lists.osmocom.org/.

jordan at k9fax.us jordan at k9fax.us
Fri Jul 30 06:35:26 UTC 2021


Hello, I am having a problem getting osmo analog to compile with 
soapySDR support. I have ensured all required libraries are installed. 
My hardware is a Raspberry pi 4 running Ubuntu Server 21.04 64-bit.

Here is the error output:
Making all in libsdr
make[2]: Entering directory '/home/ubuntu/osmocom-analog/src/libsdr'
   CC       soapy.o
soapy.c: In function ‘soapy_open’:
soapy.c:253:52: warning: passing argument 2 of 
‘SoapySDRDevice_setupStream’ makes pointer from integer without a cast 
[-Wint-conversion]
   253 |   if (!(rxStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_RX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                    ^~~~~~~~~~~~
       |                                                    |
       |                                                    int
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:295:22: note: expected ‘SoapySDRStream 
**’ but argument is of type ‘int’
   295 |     SoapySDRStream **stream,
       |     ~~~~~~~~~~~~~~~~~^~~~~~
soapy.c:253:66: warning: passing argument 3 of 
‘SoapySDRDevice_setupStream’ makes integer from pointer without a cast 
[-Wint-conversion]
   253 |   if (!(rxStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_RX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
^~~~~~~~~~~~~~
       |                                                                  
|
       |                                                                  
char *
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:296:15: note: expected ‘int’ but argument 
is of type ‘char *’
   296 |     const int direction,
       |     ~~~~~~~~~~^~~~~~~~~
soapy.c:253:82: warning: passing argument 4 of 
‘SoapySDRDevice_setupStream’ from incompatible pointer type 
[-Wincompatible-pointer-types]
   253 |   if (!(rxStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_RX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
                 ^~~~~~~~
       |                                                                  
                 |
       |                                                                  
                 size_t * {aka long unsigned int *}
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:297:17: note: expected ‘const char *’ but 
argument is of type ‘size_t *’ {aka ‘long unsigned int *’}
   297 |     const char *format,
       |     ~~~~~~~~~~~~^~~~~~
soapy.c:253:92: warning: passing argument 5 of 
‘SoapySDRDevice_setupStream’ makes pointer from integer without a cast 
[-Wint-conversion]
   253 |   if (!(rxStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_RX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
                           ^
       |                                                                  
                           |
       |                                                                  
                           int
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:298:19: note: expected ‘const size_t *’ 
{aka ‘const long unsigned int *’} but argument is of type ‘int’
   298 |     const size_t *channels,
       |     ~~~~~~~~~~~~~~^~~~~~~~
soapy.c:253:95: warning: passing argument 6 of 
‘SoapySDRDevice_setupStream’ makes integer from pointer without a cast 
[-Wint-conversion]
   253 |   if (!(rxStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_RX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
                              ^~~~~~~~~~~~
       |                                                                  
                              |
       |                                                                  
                              SoapySDRKwargs *
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:299:18: note: expected ‘size_t’ {aka 
‘const long unsigned int’} but argument is of type ‘SoapySDRKwargs *’
   299 |     const size_t numChans,
       |     ~~~~~~~~~~~~~^~~~~~~~
soapy.c:253:20: error: too few arguments to function 
‘SoapySDRDevice_setupStream’
   253 |   if (!(rxStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_RX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:294:19: note: declared here
   294 | SOAPY_SDR_API int SoapySDRDevice_setupStream(SoapySDRDevice 
*device,
       |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
soapy.c:378:66: warning: passing argument 3 of 
‘SoapySDRDevice_setupStream’ makes integer from pointer without a cast 
[-Wint-conversion]
   378 |   if (!(txStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_TX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
^~~~~~~~~~~~~~
       |                                                                  
|
       |                                                                  
char *
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:296:15: note: expected ‘int’ but argument 
is of type ‘char *’
   296 |     const int direction,
       |     ~~~~~~~~~~^~~~~~~~~
soapy.c:378:82: warning: passing argument 4 of 
‘SoapySDRDevice_setupStream’ from incompatible pointer type 
[-Wincompatible-pointer-types]
   378 |   if (!(txStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_TX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
                 ^~~~~~~~
       |                                                                  
                 |
       |                                                                  
                 size_t * {aka long unsigned int *}
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:297:17: note: expected ‘const char *’ but 
argument is of type ‘size_t *’ {aka ‘long unsigned int *’}
   297 |     const char *format,
       |     ~~~~~~~~~~~~^~~~~~
soapy.c:378:92: warning: passing argument 5 of 
‘SoapySDRDevice_setupStream’ makes pointer from integer without a cast 
[-Wint-conversion]
   378 |   if (!(txStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_TX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
                           ^
       |                                                                  
                           |
       |                                                                  
                           int
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:298:19: note: expected ‘const size_t *’ 
{aka ‘const long unsigned int *’} but argument is of type ‘int’
   298 |     const size_t *channels,
       |     ~~~~~~~~~~~~~~^~~~~~~~
soapy.c:378:95: warning: passing argument 6 of 
‘SoapySDRDevice_setupStream’ makes integer from pointer without a cast 
[-Wint-conversion]
   378 |   if (!(txStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_TX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                                                                  
                              ^~~~~~~~~~~~
       |                                                                  
                              |
       |                                                                  
                              SoapySDRKwargs *
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:299:18: note: expected ‘size_t’ {aka 
‘const long unsigned int’} but argument is of type ‘SoapySDRKwargs *’
   299 |     const size_t numChans,
       |     ~~~~~~~~~~~~~^~~~~~~~
soapy.c:378:20: error: too few arguments to function 
‘SoapySDRDevice_setupStream’
   378 |   if (!(txStream = SoapySDRDevice_setupStream(sdr, SOAPY_SDR_TX, 
SOAPY_SDR_CF32, &channel, 1, &stream_args)))
       |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from soapy.c:26:
/usr/include/SoapySDR/Device.h:294:19: note: declared here
   294 | SOAPY_SDR_API int SoapySDRDevice_setupStream(SoapySDRDevice 
*device,
       |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [Makefile:359: soapy.o] Error 1
make[2]: Leaving directory '/home/ubuntu/osmocom-analog/src/libsdr'
make[1]: *** [Makefile:360: all-recursive] Error 1
make[1]: Leaving directory '/home/ubuntu/osmocom-analog/src'
make: *** [Makefile:365: all-recursive] Error 1


Thanks for any suggestions and help!



More information about the osmocom-analog mailing list