1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-05 08:21:16 -05:00

cmake files cleanup and build simplification

This commit is contained in:
f4exb 2019-01-02 21:33:45 +01:00
parent 70970d7b7a
commit cf4b90f3ae
39 changed files with 262 additions and 305 deletions

View File

@ -81,7 +81,7 @@ In case you cannot see anything related to HDMI or your desired audio device in
If you use your own location for libairspy install directory you need to specify library and include locations. Example with `/opt/install/libairspy` with the following defines on `cmake` command line: If you use your own location for libairspy install directory you need to specify library and include locations. Example with `/opt/install/libairspy` with the following defines on `cmake` command line:
`-DLIBAIRSPY_LIBRARIES=/opt/install/libairspy/lib/libairspy.so -DLIBAIRSPY_INCLUDE_DIR=/opt/install/libairspy/include` `-DAIRSPY_DIR=/opt/install/libairspy`
Please note that if you are using a recent version of libairspy (>= 1.0.6) the dynamic retrieval of sample rates is supported. To benefit from it you should modify the `plugins/samplesource/airspy/CMakeLists.txt` and change line `add_definitions(${QT_DEFINITIONS})` by `add_definitions("${QT_DEFINITIONS} -DLIBAIRSPY_DYN_RATES")`. In fact both lines are present with the last one commented out. Please note that if you are using a recent version of libairspy (>= 1.0.6) the dynamic retrieval of sample rates is supported. To benefit from it you should modify the `plugins/samplesource/airspy/CMakeLists.txt` and change line `add_definitions(${QT_DEFINITIONS})` by `add_definitions("${QT_DEFINITIONS} -DLIBAIRSPY_DYN_RATES")`. In fact both lines are present with the last one commented out.
@ -93,7 +93,7 @@ Be also aware that the lower rates (2.5 MS/s or 5 MS/s with modified firmware) a
If you use your own location for libairspyhf install directory you need to specify library and include locations. Example with `/opt/install/libairspyhf` with the following defines on `cmake` command line: If you use your own location for libairspyhf install directory you need to specify library and include locations. Example with `/opt/install/libairspyhf` with the following defines on `cmake` command line:
`-DLIBAIRSPYHF_LIBRARIES=/opt/install/libairspyhf/lib/libairspyhf.so -DLIBAIRSPYHF_INCLUDE_DIR=/opt/install/libairspyhf/include` `-DAIRSPYHF_DIR=/opt/install/libairspyhf`
It is recommended to add `-DRX_SAMPLE_24BIT=ON` on the cmake command line to activate the Rx 24 bit DSP build and take advantage of improved dynamic range when using decimation. It is recommended to add `-DRX_SAMPLE_24BIT=ON` on the cmake command line to activate the Rx 24 bit DSP build and take advantage of improved dynamic range when using decimation.
@ -105,7 +105,7 @@ It is recommended to add `-DRX_SAMPLE_24BIT=ON` on the cmake command line to act
If you compile and use your own location for libbladeRF install directory you need to specify library and include locations. Example with `/opt/install/libbladerf` with the following defines on `cmake` command line: If you compile and use your own location for libbladeRF install directory you need to specify library and include locations. Example with `/opt/install/libbladerf` with the following defines on `cmake` command line:
`-DLIBBLADERF_LIBRARIES=/opt/install/libbladeRF/lib/libbladeRF.so -DLIBBLADERF_INCLUDE_DIR=/opt/install/libbladeRF/include` `-DBLADERF_DIR=/opt/install/libbladeRF`
☞ Please note that if you use your own library the FPGA image `hostedx40.rbf` or `hostedx115.rbf` shoud be placed in e.g. `/opt/install/libbladeRF/share/Nuand/bladeRF` unless you have flashed the FPGA image inside the BladeRF. ☞ Please note that if you use your own library the FPGA image `hostedx40.rbf` or `hostedx115.rbf` shoud be placed in e.g. `/opt/install/libbladeRF/share/Nuand/bladeRF` unless you have flashed the FPGA image inside the BladeRF.
@ -139,7 +139,7 @@ The Pro+ has trouble starting. The sound card interface is not recognized when y
If you use your own location for libhackrf install directory you need to specify library and include locations. Example with `/opt/install/libhackrf` with the following defines on `cmake` command line: If you use your own location for libhackrf install directory you need to specify library and include locations. Example with `/opt/install/libhackrf` with the following defines on `cmake` command line:
`-DLIBHACKRF_LIBRARIES=/opt/install/libhackrf/lib/libhackrf.so -DLIBHACKRF_INCLUDE_DIR=/opt/install/libhackrf/include` `-DHACKRF_DIR=/opt/install/libhackrf`
HackRF is better used with a sampling rate of 4.8 MS/s and above. The 2.4 and 3.2 MS/s rates are considered experimental and are way out of specs of the ADC. You may or may not achieve acceptable results depending on the unit. A too low sampling rate will typically create ghost signals (images) and/or raise the noise floor. HackRF is better used with a sampling rate of 4.8 MS/s and above. The 2.4 and 3.2 MS/s rates are considered experimental and are way out of specs of the ADC. You may or may not achieve acceptable results depending on the unit. A too low sampling rate will typically create ghost signals (images) and/or raise the noise floor.
@ -162,7 +162,7 @@ HackRF is better used with a sampling rate of 4.8 MS/s and above. The 2.4 and 3.
Then add the following defines on `cmake` command line: Then add the following defines on `cmake` command line:
`-DLIMESUITE_INCLUDE_DIR=/opt/install/LimeSuite/include -DLIMESUITE_LIBRARY=/opt/install/LimeSuite/lib/libLimeSuite.so` `-DLIMESUITE_DIR=/opt/install/LimeSuite/include`
<h2>Perseus</h2> <h2>Perseus</h2>
@ -172,7 +172,7 @@ Linux only.
Please note that the Perseus input plugin will be built only if the 24 bit Rx DSP chain is activated in the compilation with the `-DRX_SAMPLE_24BIT=ON` option on the cmake command line. Please note that the Perseus input plugin will be built only if the 24 bit Rx DSP chain is activated in the compilation with the `-DRX_SAMPLE_24BIT=ON` option on the cmake command line.
If you use your own location for libperseus-sdr install directory you need to specify library and include locations. Example with `/opt/install/libperseus` with the following defines on `cmake` command line: `-DLIBPERSEUS_INCLUDE_DIR=/opt/install/libperseus/include -DLIBPERSEUS_LIBRARIES=/opt/install/libperseus/lib/libperseus-sdr.so`. If you use your own location for libperseus-sdr install directory you need to specify library and include locations. Example with `/opt/install/libperseus` with the following defines on `cmake` command line: `-DPERSEUS_DIR=/opt/install/libperseus/include`.
&#9758; From version 3.12.0 the Linux binaries are built with the 24 bit Rx option and Perseus input plugin. &#9758; From version 3.12.0 the Linux binaries are built with the 24 bit Rx option and Perseus input plugin.
@ -180,7 +180,7 @@ If you use your own location for libperseus-sdr install directory you need to sp
[PlutoSDR](https://wiki.analog.com/university/tools/pluto) is supported with the libiio interface. This library should be installed in your system for proper build of the software and operation support. Add `libiio-dev` to the list of dependencies to install. Be aware that version 0.10 is needed and is not available yet in all distributions. You may have to compile it from source instead. [PlutoSDR](https://wiki.analog.com/university/tools/pluto) is supported with the libiio interface. This library should be installed in your system for proper build of the software and operation support. Add `libiio-dev` to the list of dependencies to install. Be aware that version 0.10 is needed and is not available yet in all distributions. You may have to compile it from source instead.
If you use your own location for libiio install directory you need to specify library and include locations. Example with `/opt/install/libiio` with the following defines on `cmake` command line: `-DLIBIIO_INCLUDE_DIR=/opt/install/libiio/include -DLIBIIO_LIBRARY=/opt/install/libiio/lib/libiio.so`. In openSUSE the lib directory path would be: `-DLIBIIO_LIBRARY=/opt/install/libiio/lib64/libiio.so`. If you use your own location for libiio install directory you need to specify library and include locations. Example with `/opt/install/libiio` with the following defines on `cmake` command line: `-DIIO_DIR=/opt/install/libiio`.
<h2>RTL-SDR</h2> <h2>RTL-SDR</h2>
@ -188,7 +188,7 @@ RTL-SDR based dongles are supported through the librtlsdr library that should be
If you use your own location for librtlsdr install directory you need to specify library and include locations. Example with `/opt/install/librtlsdr` with the following defines on `cmake` command line: If you use your own location for librtlsdr install directory you need to specify library and include locations. Example with `/opt/install/librtlsdr` with the following defines on `cmake` command line:
`-DLIBRTLSDR_LIBRARIES=/opt/install/librtlsdr/lib/librtlsdr.so -DLIBRTLSDR_INCLUDE_DIR=/opt/install/librtlsdr/include` `-DRTLSDR_DIR=/opt/install/librtlsdr`
<h2>SDRplay RSP1</h2> <h2>SDRplay RSP1</h2>
@ -198,9 +198,21 @@ Linux only.
If you use your own location for libmirisdr-4 install directory you need to specify library and include locations with cmake. For example with `/opt/install/libmirisdr` the following defines must be added on `cmake` command line: If you use your own location for libmirisdr-4 install directory you need to specify library and include locations with cmake. For example with `/opt/install/libmirisdr` the following defines must be added on `cmake` command line:
`-DLIBMIRISDR_LIBRARIES=/opt/install/libmirisdr/lib/libmirisdr.so -DLIBMIRISDR_INCLUDE_DIR=/opt/install/libmirisdr/include` `-DMIRISDR_DIR=/opt/install/libmirisdr`
&#9888; The RSP1 has been discontinued in favor of RSP1A. Unfortunately due to their closed source nature RSP1A nor RSP2 can be supported in SDRangel. &#9888; The RSP1 has been discontinued in favor of RSP1A. Unfortunately due to their closed source nature RSP1A nor RSP2 can be supported natively in SDRangel. As a workaround you may use it through SoapySDR.
<h2>XTRX</h2>
Compile from source.
[XTRX](https://www.crowdsupply.com/fairwaves/xtrx) is supported through the set of [xtrx libraries](https://github.com/xtrx-sdr/images).
If you use your own location for the install directory (ex: `/opt/install/xtrx-images`) you need to specify it with `-DXTRX_DIR=/opt/install/xtrx-images` on the `cmake` command line.
In addition before starting SDRangel you have to add the library directory to the `LD_LIBRARY_PATH` variable with `export LD_LIBRARY_PATH=/opt/install/xtrx-images/lib:$LD_LIBRARY_PATH`.
&#9888; Although you will find a plugin for the transmission side transmission with XTRX is not actually working. Reception is not very stable either particularly with sample rates lower than 5 MS/s.
<h1>Plugins for special devices</h1> <h1>Plugins for special devices</h1>
@ -234,7 +246,7 @@ The data blocks transmitted via UDP are protected against loss with a Cauchy MDS
There is an automated skew rate compensation in place. During rate readjustment streaming can be suspended or signal glitches can occur for about one second. There is an automated skew rate compensation in place. During rate readjustment streaming can be suspended or signal glitches can occur for about one second.
This plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc if you install it in a non standard directory you will then have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_INCLUDE_DIR=/opt/install/cm256cc/include/cm256cc -DCM256CC_LIBRARIES=/opt/install/cm256cc/lib/libcm256cc.so` to the cmake commands. This plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc if you install it in a non standard directory you will then have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_DIR=/opt/install/cm256cc` to the cmake commands.
Note that this plugin does not require any of the hardware support libraries nor the libusb library. It is always available in the list of devices as `SDRdaemonSource[0]` even if no physical device is connected. Note that this plugin does not require any of the hardware support libraries nor the libusb library. It is always available in the list of devices as `SDRdaemonSource[0]` even if no physical device is connected.
@ -246,7 +258,7 @@ The [SDRdaemon sink output plugin](https://github.com/f4exb/sdrangel/tree/dev/pl
The data blocks sent via UDP are protected against loss with a Cauchy MDS block erasure codec. This makes the transmission more robust in particular with WiFi links. The data blocks sent via UDP are protected against loss with a Cauchy MDS block erasure codec. This makes the transmission more robust in particular with WiFi links.
This plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) IS installed in your system. For CM256cc if you install it in a non standard directory you will then have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_INCLUDE_DIR=/opt/install/cm256cc/include/cm256cc -DCM256CC_LIBRARIES=/opt/install/cm256cc/lib/libcm256cc.so` to the cmake commands. This plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) IS installed in your system. For CM256cc if you install it in a non standard directory you will then have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_DIR=/opt/install/cm256cc` to the cmake commands.
Note that this plugin does not require any of the hardware support libraries nor the libusb library. It is always available in the list of devices as `SDRdaemonSink[0]` even if no physical device is connected. Note that this plugin does not require any of the hardware support libraries nor the libusb library. It is always available in the list of devices as `SDRdaemonSink[0]` even if no physical device is connected.
@ -262,13 +274,13 @@ This is the `demoddsd` plugin. At present it can be used to decode the following
- Yaesu System Fusion (YSF) - Yaesu System Fusion (YSF)
- NXDN - NXDN
It is based on the [DSDcc](https://github.com/f4exb/dsdcc) C++ library which is a rewrite of the original [DSD](https://github.com/szechyjs/dsd) program. So you will need to have DSDcc installed in your system. Please follow instructions in [DSDcc readme](https://github.com/f4exb/dsdcc/blob/master/Readme.md) to build and install DSDcc. If you install it in a custom location say `/opt/install/dsdcc` you will need to add these defines to the cmake command: `-DLIBDSDCC_INCLUDE_DIR=/opt/install/dsdcc/include/dsdcc -DLIBDSDCC_LIBRARIES=/opt/install/dsdcc/lib/libdsdcc.so` It is based on the [DSDcc](https://github.com/f4exb/dsdcc) C++ library which is a rewrite of the original [DSD](https://github.com/szechyjs/dsd) program. So you will need to have DSDcc installed in your system. Please follow instructions in [DSDcc readme](https://github.com/f4exb/dsdcc/blob/master/Readme.md) to build and install DSDcc. If you install it in a custom location say `/opt/install/dsdcc` you will need to add these defines to the cmake command: `-DDSDCC_DIR=/opt/install/dsdcc`
If you have one or more serial devices interfacing the AMBE3000 chip in packet mode you can use them to decode AMBE voice frames. For that purpose you will need to compile with [SerialDV](https://github.com/f4exb/serialDV) support. Please refer to this project Readme.md to compile and install SerialDV. If you install it in a custom location say `/opt/install/serialdv` you will need to add these defines to the cmake command: `-DLIBSERIALDV_INCLUDE_DIR=/opt/install/serialdv/include/serialdv -DLIBSERIALDV_LIBRARY=/opt/install/serialdv/lib/libserialdv.so` Also your user must be a member of group `dialout` (Ubuntu/Debian) or `uucp` (Arch) to be able to use the dongle. If you have one or more serial devices interfacing the AMBE3000 chip in packet mode you can use them to decode AMBE voice frames. For that purpose you will need to compile with [SerialDV](https://github.com/f4exb/serialDV) support. Please refer to this project Readme.md to compile and install SerialDV. If you install it in a custom location say `/opt/install/serialdv` you will need to add these defines to the cmake command: `-DSERIALDV_DIR=/opt/install/serialdv` Also your user must be a member of group `dialout` (Ubuntu/Debian) or `uucp` (Arch) to be able to use the dongle.
Although such serial devices work with a serial interface at 400 kb in practice maybe for other reasons they are capable of handling only one conversation at a time. The software will allocate the device dynamically to a conversation with an inactivity timeout of 1 second so that conversations do not get interrupted constantly making the audio output too choppy. In practice you will have to have as many devices connected to your system as the number of conversations you would like to be handled in parallel. Although such serial devices work with a serial interface at 400 kb in practice maybe for other reasons they are capable of handling only one conversation at a time. The software will allocate the device dynamically to a conversation with an inactivity timeout of 1 second so that conversations do not get interrupted constantly making the audio output too choppy. In practice you will have to have as many devices connected to your system as the number of conversations you would like to be handled in parallel.
Alternatively you can use [mbelib](https://github.com/szechyjs/mbelib) but mbelib comes with some copyright issues (see next). If you have mbelib installed in a custom location, say `/opt/install/mbelib` you will need to add these defines to the cmake command: `-DLIBMBE_INCLUDE_DIR=/opt/install/mbelib/include -DLIBMBE_LIBRARY=/opt/install/mbelib/lib/libmbe.so` Alternatively you can use [mbelib](https://github.com/szechyjs/mbelib) but mbelib comes with some copyright issues (see next). If you have mbelib installed in a custom location, say `/opt/install/mbelib` you will need to add these defines to the cmake command: `-DMBE_DIR=/opt/install/mbelib`
Possible copyright issues apart (see next) the audio quality with the DVSI AMBE chip is much better. Possible copyright issues apart (see next) the audio quality with the DVSI AMBE chip is much better.
@ -285,6 +297,7 @@ If you are not comfortable with this just do not install DSDcc and/or mbelib and
In the [releases](https://github.com/f4exb/sdrangel/releases) section one can find binary distributions for some Debian based distributions: In the [releases](https://github.com/f4exb/sdrangel/releases) section one can find binary distributions for some Debian based distributions:
- Ubuntu 18.10 (Cosmic)
- Ubuntu 18.04 (Bionic) - Ubuntu 18.04 (Bionic)
- Ubuntu 16.04 (Xenial) - Ubuntu 16.04 (Xenial)
- Debian Stretch - Debian Stretch

View File

@ -1,37 +0,0 @@
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(PC_CM256 "libcm256")
FIND_PATH(CM256_INCLUDE_DIR
NAMES cm256/cm256.h
HINTS ${PC_CM256_INCLUDE_DIR}
${CMAKE_INSTALL_PREFIX}/include
${LIBCM256_INSTALL_PREFIX}/include
PATHS
/usr/local/include
/usr/include
)
FIND_LIBRARY(CM256_LIBRARIES
NAMES cm256 libcm256
HINTS ${PC_CM256_LIBDIR}
${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64
PATHS
${CM256_INCLUDE_DIR}/../lib
/usr/local/lib
/usr/local/lib64
/usr/lib
/usr/lib64
)
if(CM256_INCLUDE_DIR AND CM256_LIBRARIES)
set(CM256_FOUND TRUE CACHE INTERNAL "CM256 found")
message(STATUS "Found CM256: ${CM256_INCLUDE_DIR}, ${CM256_LIBRARIES}")
else(CM256_INCLUDE_DIR AND CM256_LIBRARIES)
set(CM256_FOUND FALSE CACHE INTERNAL "CM256 found")
message(STATUS "CM256 not found")
endif(CM256_INCLUDE_DIR AND CM256_LIBRARIES)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(CM256 DEFAULT_MSG CM256_LIBRARIES CM256_INCLUDE_DIR)
MARK_AS_ADVANCED(CM256_LIBRARIES CM256_INCLUDE_DIR)

View File

@ -5,8 +5,7 @@ FIND_PATH(CM256CC_INCLUDE_DIR
NAMES cm256.h NAMES cm256.h
HINTS ${PC_CM256CC_INCLUDE_DIR} HINTS ${PC_CM256CC_INCLUDE_DIR}
${CMAKE_INSTALL_PREFIX}/include ${CMAKE_INSTALL_PREFIX}/include
${LIBCM256CC_INSTALL_PREFIX}/include PATHS ${CM256CC_DIR}/include/cm256cc
PATHS
/usr/local/include/cm256cc /usr/local/include/cm256cc
/usr/include/cm256cc /usr/include/cm256cc
) )
@ -16,8 +15,8 @@ FIND_LIBRARY(CM256CC_LIBRARIES
HINTS ${PC_CM256CC_LIBDIR} HINTS ${PC_CM256CC_LIBDIR}
${CMAKE_INSTALL_PREFIX}/lib ${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib64
PATHS PATHS ${CM256CC_DIR}/lib
${CM256CC_INCLUDE_DIR}/../lib ${CM256CC_DIR}/lib64
/usr/local/lib /usr/local/lib
/usr/local/lib64 /usr/local/lib64
/usr/lib /usr/lib

View File

@ -1,29 +0,0 @@
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(PC_GRUEL gruel)
FIND_PATH(
GRUEL_INCLUDE_DIRS
NAMES gruel/attributes.h
HINTS $ENV{GRUEL_DIR}/include
${PC_GRUEL_INCLUDEDIR}
${CMAKE_INSTALL_PREFIX}/include
PATHS /usr/local/include
/usr/include
)
FIND_LIBRARY(
GRUEL_LIBRARIES
NAMES gruel
HINTS $ENV{GRUEL_DIR}/lib
${PC_GRUEL_LIBDIR}
${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64
PATHS /usr/local/lib
/usr/local/lib64
/usr/lib
/usr/lib64
)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GRUEL DEFAULT_MSG GRUEL_LIBRARIES GRUEL_INCLUDE_DIRS)
MARK_AS_ADVANCED(GRUEL_LIBRARIES GRUEL_INCLUDE_DIRS)

View File

@ -1,39 +0,0 @@
if(NOT JRTPLIB_FOUND)
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(PC_JRTPLIB "jrtplib")
FIND_PATH(JRTPLIB_INCLUDE_DIR
NAMES rtpsession.h
HINTS ${PC_JRTPLIB_INCLUDE_DIR}
${CMAKE_INSTALL_PREFIX}/include/jrtplib3
${JRTPLIB_INSTALL_PREFIX}/include/jrtplib3
PATHS
/usr/local/include/jrtplib3
/usr/include/jrtplib3
)
FIND_LIBRARY(JRTPLIB_LIBRARIES
NAMES libjrtp
HINTS ${PC_JRTPLIB_LIBDIR}
${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64
PATHS
${JRTPLIB_INCLUDE_DIR}/../lib
/usr/local/lib
/usr/local/lib64
/usr/lib
/usr/lib64
)
if(JRTPLIB_INCLUDE_DIR AND JRTPLIB_LIBRARIES)
set(JRTPLIB_FOUND TRUE CACHE INTERNAL "JRTPLib found")
message(STATUS "Found JRTPLib: ${JRTPLIB_INCLUDE_DIR}, ${JRTPLIB_LIBRARIES}")
else()
set(JRTPLIB_FOUND FALSE CACHE INTERNAL "JRTPLib found")
message(STATUS "JRTPLib not found")
endif()
MARK_AS_ADVANCED(JRTPLIB_LIBRARIES JRTPLIB_INCLUDE_DIR)
endif(NOT JRTPLIB_FOUND)

View File

@ -1,15 +1,18 @@
if(NOT LIBAIRSPY_FOUND) if(NOT LIBAIRSPY_FOUND)
pkg_check_modules (LIBAIRSPY_PKG libairspy) pkg_check_modules (LIBAIRSPY_PKG libairspy)
find_path(LIBAIRSPY_INCLUDE_DIR NAMES libairspy/airspy.h
PATHS find_path(LIBAIRSPY_INCLUDE_DIR
NAMES libairspy/airspy.h
PATHS ${AIRSPY_DIR}/include
${LIBAIRSPY_PKG_INCLUDE_DIRS} ${LIBAIRSPY_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBAIRSPY_LIBRARIES NAMES airspy find_library(LIBAIRSPY_LIBRARIES
PATHS NAMES airspy
PATHS ${AIRSPY_DIR}/lib
${LIBAIRSPY_PKG_LIBRARY_DIRS} ${LIBAIRSPY_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,15 +1,18 @@
if(NOT LIBAIRSPYHF_FOUND) if(NOT LIBAIRSPYHF_FOUND)
pkg_check_modules (LIBAIRSPYHF_PKG libairspyhf) pkg_check_modules (LIBAIRSPYHF_PKG libairspyhf)
find_path(LIBAIRSPYHF_INCLUDE_DIR NAMES libairspyhf/airspyhf.h
PATHS find_path(LIBAIRSPYHF_INCLUDE_DIR
NAMES libairspyhf/airspyhf.h
PATHS ${AIRSPYHF_DIR}/include
${LIBAIRSPYHF_PKG_INCLUDE_DIRS} ${LIBAIRSPYHF_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBAIRSPYHF_LIBRARIES NAMES airspyhf find_library(LIBAIRSPYHF_LIBRARIES
PATHS NAMES airspyhf
PATHS ${AIRSPYHF_DIR}/lib
${LIBAIRSPYHF_PKG_LIBRARY_DIRS} ${LIBAIRSPYHF_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,15 +1,18 @@
if(NOT LIBBLADERF_FOUND) if(NOT LIBBLADERF_FOUND)
pkg_check_modules (LIBBLADERF_PKG libbladeRF) pkg_check_modules (LIBBLADERF_PKG libbladeRF)
find_path(LIBBLADERF_INCLUDE_DIR NAMES libbladeRF.h
PATHS find_path(LIBBLADERF_INCLUDE_DIR
NAMES libbladeRF.h
PATHS ${BLADERF_DIR}/include
${LIBBLADERF_PKG_INCLUDE_DIRS} ${LIBBLADERF_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBBLADERF_LIBRARIES NAMES bladeRF find_library(LIBBLADERF_LIBRARIES
PATHS NAMES bladeRF
PATHS ${BLADERF_DIR}/lib
${LIBBLADERF_PKG_LIBRARY_DIRS} ${LIBBLADERF_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -3,15 +3,19 @@
if(NOT LIBDSDCC_FOUND) if(NOT LIBDSDCC_FOUND)
pkg_check_modules (LIBDSDCC_PKG libdsdcc) pkg_check_modules (LIBDSDCC_PKG libdsdcc)
find_path(LIBDSDCC_INCLUDE_DIR NAMES dsd_decoder.h
PATHS find_path(LIBDSDCC_INCLUDE_DIR
NAMES dsd_decoder.h
PATHS ${DSDCC_DIR}/include/dsdcc
${LIBDSDCC_PKG_INCLUDE_DIRS} ${LIBDSDCC_PKG_INCLUDE_DIRS}
/usr/include /usr/include/dsdcc
/usr/local/include /usr/local/include/dsdcc
) )
find_library(LIBDSDCC_LIBRARIES NAMES dsdcc find_library(LIBDSDCC_LIBRARIES
PATHS NAMES dsdcc
PATHS ${DSDCC_DIR}/lib
${DSDCC_DIR}/lib64
${LIBDSDCC_PKG_LIBRARY_DIRS} ${LIBDSDCC_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/lib64 /usr/lib64

View File

@ -1,15 +1,18 @@
if(NOT LIBHACKRF_FOUND) if(NOT LIBHACKRF_FOUND)
pkg_check_modules (LIBHACKRF_PKG libhackrf) pkg_check_modules (LIBHACKRF_PKG libhackrf)
find_path(LIBHACKRF_INCLUDE_DIR NAMES libhackrf/hackrf.h
PATHS find_path(LIBHACKRF_INCLUDE_DIR
NAMES libhackrf/hackrf.h
PATHS ${HACKRF_DIR}/include
${LIBHACKRF_PKG_INCLUDE_DIRS} ${LIBHACKRF_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBHACKRF_LIBRARIES NAMES hackrf find_library(LIBHACKRF_LIBRARIES
PATHS NAMES hackrf
PATHS ${HACKRF_DIR}/lib
${LIBHACKRF_PKG_LIBRARY_DIRS} ${LIBHACKRF_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,15 +1,18 @@
if(NOT LIBIIO_FOUND) if(NOT LIBIIO_FOUND)
pkg_check_modules (LIBIIO_PKG libiio) pkg_check_modules (LIBIIO_PKG libiio)
find_path(LIBIIO_INCLUDE_DIR NAMES iio.h
PATHS find_path(LIBIIO_INCLUDE_DIR
NAMES iio.h
PATHS ${IIO_DIR}/include
${LIBIIO_PKG_INCLUDE_DIRS} ${LIBIIO_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBIIO_LIBRARIES NAMES iio find_library(LIBIIO_LIBRARIES
PATHS NAMES iio
PATHS ${IIO_DIR}/lib
${LIBIIO_PKG_LIBRARY_DIRS} ${LIBIIO_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,22 +1,33 @@
# Find libmbe # Find libmbe
FIND_PATH(LIBMBE_INCLUDE_DIR mbelib.h) find_path(LIBMBE_INCLUDE_DIR
NAMES mbelib.h
PATHS ${MBE_DIR}/include
/usr/include
/usr/local/include
)
SET(LIBMBE_NAMES ${LIBMBE_NAMES} mbe libmbe) set(LIBMBE_NAMES ${LIBMBE_NAMES} mbe libmbe)
FIND_LIBRARY(LIBMBE_LIBRARY NAMES ${LIBMBE_NAMES} PATH)
IF (LIBMBE_INCLUDE_DIR AND LIBMBE_LIBRARY) find_library(LIBMBE_LIBRARY
SET(LIBMBE_FOUND TRUE) NAMES ${LIBMBE_NAMES}
ENDIF (LIBMBE_INCLUDE_DIR AND LIBMBE_LIBRARY) PATHS ${MBE_DIR}/lib
/usr/include
/usr/local/include
)
IF (LIBMBE_FOUND) if (LIBMBE_INCLUDE_DIR AND LIBMBE_LIBRARY)
IF (NOT LibMbe_FIND_QUIETLY) set(LIBMBE_FOUND TRUE)
MESSAGE (STATUS "Found LibMbe: ${LIBMBE_INCLUDE_DIR}, ${LIBMBE_LIBRARY}") endif (LIBMBE_INCLUDE_DIR AND LIBMBE_LIBRARY)
ENDIF (NOT LibMbe_FIND_QUIETLY)
ELSE (LIBMBE_FOUND) if (LIBMBE_FOUND)
IF (LibMbe_FIND_REQUIRED) if (NOT LibMbe_FIND_QUIETLY)
MESSAGE (FATAL_ERROR "Could not find mbe") message (STATUS "Found LibMbe: ${LIBMBE_INCLUDE_DIR}, ${LIBMBE_LIBRARY}")
ENDIF (LibMbe_FIND_REQUIRED) endif (NOT LibMbe_FIND_QUIETLY)
ENDIF (LIBMBE_FOUND) else (LIBMBE_FOUND)
if (LibMbe_FIND_REQUIRED)
message (FATAL_ERROR "Could not find mbe")
endif (LibMbe_FIND_REQUIRED)
endif (LIBMBE_FOUND)
mark_as_advanced(LIBMBE_INCLUDE_DIR LIBMBE_LIBRARY) mark_as_advanced(LIBMBE_INCLUDE_DIR LIBMBE_LIBRARY)

View File

@ -1,15 +1,18 @@
if(NOT LIBMIRISDR_FOUND) if(NOT LIBMIRISDR_FOUND)
pkg_check_modules (LIBMIRISDR_PKG libmirisdr) pkg_check_modules (LIBMIRISDR_PKG libmirisdr)
find_path(LIBMIRISDR_INCLUDE_DIR NAMES mirisdr.h
PATHS find_path(LIBMIRISDR_INCLUDE_DIR
NAMES mirisdr.h
PATHS ${MIRISDR_DIR}/include
${LIBMIRISDR_PKG_INCLUDE_DIRS} ${LIBMIRISDR_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBMIRISDR_LIBRARIES NAMES mirisdr find_library(LIBMIRISDR_LIBRARIES
PATHS NAMES mirisdr
PATHS ${MIRISDR_DIR}/lib
${LIBMIRISDR_PKG_LIBRARY_DIRS} ${LIBMIRISDR_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,15 +1,19 @@
if(NOT LIBPERSEUS_FOUND) if(NOT LIBPERSEUS_FOUND)
pkg_check_modules (LIBPERSEUS_PKG libperseus) pkg_check_modules (LIBPERSEUS_PKG libperseus)
find_path(LIBPERSEUS_INCLUDE_DIR NAMES perseus-sdr.h
PATHS find_path(LIBPERSEUS_INCLUDE_DIR
NAMES perseus-sdr.h
PATHS ${PERSEUS_DIR}/include
${LIBPERSEUS_PKG_INCLUDE_DIRS} ${LIBPERSEUS_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBPERSEUS_LIBRARIES NAMES perseus-sdr find_library(LIBPERSEUS_LIBRARIES
PATHS NAMES perseus-sdr
PATHS ${PERSEUS_DIR}/lib
${PERSEUS_DIR}/lib64
${LIBPERSEUS_PKG_LIBRARY_DIRS} ${LIBPERSEUS_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,15 +1,18 @@
if(NOT LIBRTLSDR_FOUND) if(NOT LIBRTLSDR_FOUND)
pkg_check_modules (LIBRTLSDR_PKG librtlsdr) pkg_check_modules (LIBRTLSDR_PKG librtlsdr)
find_path(LIBRTLSDR_INCLUDE_DIR NAMES rtl-sdr.h
PATHS find_path(LIBRTLSDR_INCLUDE_DIR
NAMES rtl-sdr.h
PATHS ${RTLSDR_DIR}/include
${LIBRTLSDR_PKG_INCLUDE_DIRS} ${LIBRTLSDR_PKG_INCLUDE_DIRS}
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
find_library(LIBRTLSDR_LIBRARIES NAMES rtlsdr find_library(LIBRTLSDR_LIBRARIES
PATHS NAMES rtlsdr
PATHS ${RTLSDR_DIR}/lib
${LIBRTLSDR_PKG_LIBRARY_DIRS} ${LIBRTLSDR_PKG_LIBRARY_DIRS}
/usr/lib /usr/lib
/usr/local/lib /usr/local/lib

View File

@ -1,34 +1,35 @@
# Find Lime Suite # Find Lime Suite
if (NOT LIMESUITE_INCLUDE_DIR) if (NOT LIMESUITE_INCLUDE_DIR)
FIND_PATH (LIMESUITE_INCLUDE_DIR find_path (LIMESUITE_INCLUDE_DIR
NAMES lime/LimeSuite.h NAMES lime/LimeSuite.h
PATHS PATHS ${LIMESUITE_DIR}/include
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
endif() endif()
if (NOT LIMESUITE_LIBRARY) if (NOT LIMESUITE_LIBRARY)
FIND_LIBRARY (LIMESUITE_LIBRARY find_library (LIMESUITE_LIBRARY
NAMES LimeSuite NAMES LimeSuite
HINTS ${CMAKE_INSTALL_PREFIX}/lib HINTS ${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib64
PATHS /usr/local/lib PATHS ${LIMESUITE_DIR}/lib
/usr/local/lib
/usr/local/lib64 /usr/local/lib64
/usr/lib /usr/lib
/usr/lib64 /usr/lib64
) )
endif() endif()
IF (LIMESUITE_INCLUDE_DIR AND LIMESUITE_LIBRARY) if (LIMESUITE_INCLUDE_DIR AND LIMESUITE_LIBRARY)
SET(LIMESUITE_FOUND TRUE) set(LIMESUITE_FOUND TRUE)
ENDIF (LIMESUITE_INCLUDE_DIR AND LIMESUITE_LIBRARY) endif (LIMESUITE_INCLUDE_DIR AND LIMESUITE_LIBRARY)
IF (LIMESUITE_FOUND) if (LIMESUITE_FOUND)
MESSAGE (STATUS "Found Lime Suite: ${LIMESUITE_INCLUDE_DIR}, ${LIMESUITE_LIBRARY}") message (STATUS "Found Lime Suite: ${LIMESUITE_INCLUDE_DIR}, ${LIMESUITE_LIBRARY}")
ELSE (LIMESUITE_FOUND) else (LIMESUITE_FOUND)
MESSAGE (STATUS "Could not find Lime Suite") message (STATUS "Could not find Lime Suite")
ENDIF (LIMESUITE_FOUND) endif (LIMESUITE_FOUND)
mark_as_advanced(LIMESUITE_INCLUDE_DIR LIMESUITE_LIBRARY) mark_as_advanced(LIMESUITE_INCLUDE_DIR LIMESUITE_LIBRARY)

View File

@ -1,22 +1,33 @@
# Find serialDV # Find serialDV
FIND_PATH(LIBSERIALDV_INCLUDE_DIR dvcontroller.h) find_path(LIBSERIALDV_INCLUDE_DIR
NAMES dvcontroller.h
PATHS ${SERIALDV_DIR}/include/serialdv
/usr/include/serialdv
/usr/local/include/serialdv
)
SET(LIBSERIAL_NAMES ${LIBSERIAL_NAMES} serialdv libserialdv) set(LIBSERIAL_NAMES ${LIBSERIAL_NAMES} serialdv libserialdv)
FIND_LIBRARY(LIBSERIALDV_LIBRARY NAMES ${LIBSERIALDV_NAMES} PATH)
IF (LIBSERIALDV_INCLUDE_DIR AND LIBSERIALDV_LIBRARY) find_library(LIBSERIALDV_LIBRARY
SET(LIBSERIALDV_FOUND TRUE) NAMES ${LIBSERIALDV_NAMES}
ENDIF (LIBSERIALDV_INCLUDE_DIR AND LIBSERIALDV_LIBRARY) PATHS ${SERIALDV_DIR}/lib
/usr/lib
/usr/local/lib
)
IF (LIBSERIALDV_FOUND) if (LIBSERIALDV_INCLUDE_DIR AND LIBSERIALDV_LIBRARY)
IF (NOT SerialDV_FIND_QUIETLY) set(LIBSERIALDV_FOUND TRUE)
MESSAGE (STATUS "Found libserialdv: ${LIBSERIALDV_INCLUDE_DIR}, ${LIBSERIALDV_LIBRARY}") endif (LIBSERIALDV_INCLUDE_DIR AND LIBSERIALDV_LIBRARY)
ENDIF (NOT SerialDV_FIND_QUIETLY)
ELSE (LIBSERIALDV_FOUND) if (LIBSERIALDV_FOUND)
IF (SerialDV_FIND_REQUIRED) if (NOT SerialDV_FIND_QUIETLY)
MESSAGE (FATAL_ERROR "Could not find SerialDV") message (STATUS "Found libserialdv: ${LIBSERIALDV_INCLUDE_DIR}, ${LIBSERIALDV_LIBRARY}")
ENDIF (SerialDV_FIND_REQUIRED) endif (NOT SerialDV_FIND_QUIETLY)
ENDIF (LIBSERIALDV_FOUND) else (LIBSERIALDV_FOUND)
if (SerialDV_FIND_REQUIRED)
message (FATAL_ERROR "Could not find SerialDV")
endif (SerialDV_FIND_REQUIRED)
endif (LIBSERIALDV_FOUND)
mark_as_advanced(LIBSERIALDV_INCLUDE_DIR LIBSERIALDV_LIBRARY) mark_as_advanced(LIBSERIALDV_INCLUDE_DIR LIBSERIALDV_LIBRARY)

View File

@ -1,20 +1,22 @@
# Find Soapy SDR # Find Soapy SDR
if (NOT SOAPYSDR_INCLUDE_DIR) if (NOT SOAPYSDR_INCLUDE_DIR)
FIND_PATH (SOAPYSDR_INCLUDE_DIR find_path (SOAPYSDR_INCLUDE_DIR
NAMES SoapySDR/Version.h NAMES SoapySDR/Version.h
PATHS PATHS ${SOAPYSDR_DIR}/include
/usr/include /usr/include
/usr/local/include /usr/local/include
) )
endif() endif()
if (NOT SOAPYSDR_LIBRARY) if (NOT SOAPYSDR_LIBRARY)
FIND_LIBRARY (SOAPYSDR_LIBRARY find_library (SOAPYSDR_LIBRARY
NAMES SoapySDR NAMES SoapySDR
HINTS ${CMAKE_INSTALL_PREFIX}/lib HINTS ${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64 ${CMAKE_INSTALL_PREFIX}/lib64
PATHS /usr/local/lib PATHS ${SOAPYSDR_DIR}/lib
${SOAPYSDR_DIR}/lib64
/usr/local/lib
/usr/local/lib64 /usr/local/lib64
/usr/lib /usr/lib
/usr/lib64 /usr/lib64
@ -22,13 +24,13 @@ if (NOT SOAPYSDR_LIBRARY)
endif() endif()
if (SOAPYSDR_INCLUDE_DIR AND SOAPYSDR_LIBRARY) if (SOAPYSDR_INCLUDE_DIR AND SOAPYSDR_LIBRARY)
SET(SOAPYSDR_FOUND TRUE) set(SOAPYSDR_FOUND TRUE)
endif() endif()
if (SOAPYSDR_FOUND) if (SOAPYSDR_FOUND)
MESSAGE (STATUS "Found SoapySDR: ${SOAPYSDR_INCLUDE_DIR}, ${SOAPYSDR_LIBRARY}") message (STATUS "Found SoapySDR: ${SOAPYSDR_INCLUDE_DIR}, ${SOAPYSDR_LIBRARY}")
else() else()
MESSAGE (STATUS "Could not find SoapySDR") message (STATUS "Could not find SoapySDR")
endif() endif()
mark_as_advanced(SOAPYSDR_INCLUDE_DIR SOAPYSDR_LIBRARY) mark_as_advanced(SOAPYSDR_INCLUDE_DIR SOAPYSDR_LIBRARY)

View File

@ -8,7 +8,7 @@ It is present only in Linux binary releases.
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_INCLUDE_DIR=/opt/install/cm256cc/include/cm256cc -DCM256CC_LIBRARIES=/opt/install/cm256cc/lib/libcm256cc.so` to the cmake commands. The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_DIR=/opt/install/cm256cc` to the cmake commands.
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -12,13 +12,13 @@ This plugin uses the [DSDcc](https://github.com/f4exb/dsdcc) library that has be
The modulation and standard is automatically detected and switched depending on the Baud rate chosen. The modulation and standard is automatically detected and switched depending on the Baud rate chosen.
To enable this plugin at compile time you will need to have DSDcc installed in your system. Please follow instructions in [DSDcc readme](https://github.com/f4exb/dsdcc/blob/master/Readme.md) to build and install DSDcc. If you install it in a custom location say `/opt/install/dsdcc` you will need to add these defines to the cmake command: `-DLIBDSDCC_INCLUDE_DIR=/opt/install/dsdcc/include/dsdcc -DLIBDSDCC_LIBRARIES=/opt/install/dsdcc/lib/libdsdcc.so` To enable this plugin at compile time you will need to have DSDcc installed in your system. Please follow instructions in [DSDcc readme](https://github.com/f4exb/dsdcc/blob/master/Readme.md) to build and install DSDcc. If you install it in a custom location say `/opt/install/dsdcc` you will need to add these defines to the cmake command: `-DDSDCC_DIR=/opt/install/dsdcc`
<h2>DV serial device support</h2> <h2>DV serial device support</h2>
You can use a serial device connected to your system that implements and exposes the packet interface of the AMBE3000 chip. This can be for example a ThumbDV USB dongle. In order to support DV serial devices in your system you will need two things: You can use a serial device connected to your system that implements and exposes the packet interface of the AMBE3000 chip. This can be for example a ThumbDV USB dongle. In order to support DV serial devices in your system you will need two things:
- Compile with [SerialDV](https://github.com/f4exb/serialDV) support Please refer to this project Readme.md to compile and install SerialDV. If you install it in a custom location say `/opt/install/serialdv` you will need to add these defines to the cmake command: `-DLIBSERIALDV_INCLUDE_DIR=/opt/install/serialdv/include/serialdv -DLIBSERIALDV_LIBRARY=/opt/install/serialdv/lib/libserialdv.so` - Compile with [SerialDV](https://github.com/f4exb/serialDV) support Please refer to this project Readme.md to compile and install SerialDV. If you install it in a custom location say `/opt/install/serialdv` you will need to add these defines to the cmake command: `-DSERIALDV_DIR=/opt/install/serialdv`
- Enable DV serial devices in your system by checking the option in the Preferences menu. You will need to enable the DV serial devices each time you start SDRangel. - Enable DV serial devices in your system by checking the option in the Preferences menu. You will need to enable the DV serial devices each time you start SDRangel.
Although such serial devices work with a serial interface at 400 kb in practice maybe for other reasons they are capable of handling only one conversation at a time. The software will allocate the device dynamically to a conversation with an inactivity timeout of 1 second so that conversations do not get interrupted constantly making the audio output too choppy. In practice you will have to have as many devices connected to your system as the number of conversations you would like to be handled in parallel. Although such serial devices work with a serial interface at 400 kb in practice maybe for other reasons they are capable of handling only one conversation at a time. The software will allocate the device dynamically to a conversation with an inactivity timeout of 1 second so that conversations do not get interrupted constantly making the audio output too choppy. In practice you will have to have as many devices connected to your system as the number of conversations you would like to be handled in parallel.
@ -45,7 +45,7 @@ If you are not comfortable with this just do not install DSDcc and/or mbelib and
- For Linux distributions: `plugins/channel/libdemoddsd.so` - For Linux distributions: `plugins/channel/libdemoddsd.so`
- For Windows distributions: `dsdcc.dll`, `mbelib.dll`, `plugins\channel\demoddsd.dll` - For Windows distributions: `dsdcc.dll`, `mbelib.dll`, `plugins\channel\demoddsd.dll`
For software built from source if you choose to have `mbelib` support you will need to have DSDcc compiled with `mbelib` support. You will also need to have defines for it on the cmake command. If you have mbelib installed in a custom location, say `/opt/install/mbelib` you will need to add these defines to the cmake command: `-DLIBMBE_INCLUDE_DIR=/opt/install/mbelib/include -DLIBMBE_LIBRARY=/opt/install/mbelib/lib/libmbe.so` For software built from source if you choose to have `mbelib` support you will need to have DSDcc compiled with `mbelib` support. You will also need to have defines for it on the cmake command. If you have mbelib installed in a custom location, say `/opt/install/mbelib` you will need to add these defines to the cmake command: `-DMBE_DIR=/opt/install/mbelib`
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -8,7 +8,7 @@ It is present only in Linux binary releases.
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_INCLUDE_DIR=/opt/install/cm256cc/include/cm256cc -DCM256CC_LIBRARIES=/opt/install/cm256cc/lib/libcm256cc.so` to the cmake commands. The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_DIR=/opt/install/cm256cc` to the cmake commands.
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -24,7 +24,7 @@ This works similarly to LimeSDR USB or BladeRF 2.0 micro
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DLIBBLADERF_INCLUDE_DIR=/opt/install/libbladeRF/include -DLIBBLADERF_LIBRARIES=/opt/install/libbladeRF/lib/libbladeRF.so` to the cmake command line. The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DBLADERF_INCLUDE_DIR=/opt/install/libbladeRF` to the cmake command line.
Note that since version 4.2.0 the libbladeRF v2 (specifically the git tag 2018.08) is used. Note that since version 4.2.0 the libbladeRF v2 (specifically the git tag 2018.08) is used.

View File

@ -6,7 +6,7 @@ This output sample sink plugin sends its samples to a [BladeRF2 device](https://
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DLIBBLADERF_INCLUDE_DIR=/opt/install/libbladeRF/include -DLIBBLADERF_LIBRARIES=/opt/install/libbladeRF/lib/libbladeRF.so` to the cmake command line. The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DBLADERF_DIR=/opt/install/libbladeRF/include` to the cmake command line.
Note that the libbladeRF v2 (specifically the git tag 2018.08) is used. The FPGA image v0.7.3 should be used accordingly. The FPGA .rbf file should be copied to the folder where the `sdrangel` binary resides. You can download FPGA images from [here](https://www.nuand.com/fpga_images/) Note that the libbladeRF v2 (specifically the git tag 2018.08) is used. The FPGA image v0.7.3 should be used accordingly. The FPGA .rbf file should be copied to the folder where the `sdrangel` binary resides. You can download FPGA images from [here](https://www.nuand.com/fpga_images/)

View File

@ -6,7 +6,7 @@ This output sample sink plugin sends its samples to a [HackRF device](https://gr
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [HackRF host library](https://github.com/mossmann/hackrf) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libhackrf` you will have to add `-DLIBHACKRF_INCLUDE_DIR=/opt/install/libhackrf/include -DLIBHACKRF_LIBRARIES=/opt/install/libhackrf/lib/libhackrf.so` to the cmake command line. The plugin will be built only if the [HackRF host library](https://github.com/mossmann/hackrf) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libhackrf` you will have to add `-DHACKRF_DIR=/opt/install/libhackrf` to the cmake command line.
The HackRF Host library is also provided by many Linux distributions and is built in the SDRangel binary releases. The HackRF Host library is also provided by many Linux distributions and is built in the SDRangel binary releases.

View File

@ -25,7 +25,7 @@ The plugin will be built only if LimeSuite is installed in your system. Please u
Then add the following defines on `cmake` command line: Then add the following defines on `cmake` command line:
`-DLIMESUITE_INCLUDE_DIR=/opt/install/LimeSuite/include -DLIMESUITE_LIBRARY=/opt/install/LimeSuite/lib/libLimeSuite.so` `-DLIMESUITE_DIR=/opt/install/LimeSuite`
<h2>Installation from binary packages</h2> <h2>Installation from binary packages</h2>

View File

@ -23,7 +23,7 @@ The plugin will be built only if libiio is installed in your system. To build an
Then add the following defines on `cmake` command line when compiling SDRangel: Then add the following defines on `cmake` command line when compiling SDRangel:
`-DLIBIIO_INCLUDE_DIR=/opt/install/libiio/include -DLIBIIO_LIBRARY=/opt/install/libiio/lib/libiio.so` `-DIIO_DIR=/opt/install/libiio`
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -14,7 +14,7 @@ It is present only in Linux binary releases.
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_INCLUDE_DIR=/opt/install/cm256cc/include/cm256cc -DCM256CC_LIBRARIES=/opt/install/cm256cc/lib/libcm256cc.so` to the cmake commands. The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_DIR=/opt/install/cm256cc` to the cmake commands.
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -29,11 +29,7 @@ if(LIBUSB_FOUND AND LIBBLADERF_FOUND)
add_subdirectory(bladerf2input) add_subdirectory(bladerf2input)
endif(LIBUSB_FOUND AND LIBBLADERF_FOUND) endif(LIBUSB_FOUND AND LIBBLADERF_FOUND)
if(LIBUSB_FOUND AND UNIX) if(LIBUSB_FOUND)
FIND_PATH (ASOUNDH alsa/asoundlib.h)
FIND_LIBRARY (LIBASOUND asound)
endif()
if(LIBASOUND AND ASOUNDH)
add_subdirectory(fcdpro) add_subdirectory(fcdpro)
add_subdirectory(fcdproplus) add_subdirectory(fcdproplus)
endif() endif()

View File

@ -8,7 +8,7 @@ This input sample source plugin gets its samples from a [Airspy HF+ device](http
The plugin will be built only if the [Airspy HF library](https://github.com/airspy/airspyhf) is installed in your system. The plugin will be built only if the [Airspy HF library](https://github.com/airspy/airspyhf) is installed in your system.
If you build it from source and install it in a custom location say: `/opt/install/libairspyhf` you will have to add `-DLIBRTLSDR_INCLUDE_DIR=/opt/install/libairspyhf/include -DLIBRTLSDR_LIBRARIES=/opt/install/libairspyhf/lib/libairspyhf.so` to the cmake command line. If you build it from source and install it in a custom location say: `/opt/install/libairspyhf` you will have to add `-DAIRSPYHF_DIR=/opt/install/libairspyhf` to the cmake command line.
Note: if you use binary distributions this is included in the bundle. Note: if you use binary distributions this is included in the bundle.

View File

@ -6,7 +6,7 @@ This input sample source plugin gets its samples from a [BladeRF1 device](https:
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DLIBBLADERF_INCLUDE_DIR=/opt/install/libbladeRF/include -DLIBBLADERF_LIBRARIES=/opt/install/libbladeRF/lib/libbladeRF.so` to the cmake command line. The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DBLADERF_INCLUDE_DIR=/opt/install/libbladeRF` to the cmake command line.
Note that libbladeRF v2 with git tag 2018.08 should be used (official release). The FPGA image v0.7.3 should be used accordingly. The FPGA .rbf file should be copied to the folder where the `sdrangel` binary resides. You can download FPGA images from [here](https://www.nuand.com/fpga_images/) Note that libbladeRF v2 with git tag 2018.08 should be used (official release). The FPGA image v0.7.3 should be used accordingly. The FPGA .rbf file should be copied to the folder where the `sdrangel` binary resides. You can download FPGA images from [here](https://www.nuand.com/fpga_images/)

View File

@ -6,7 +6,7 @@ This input sample source plugin gets its samples from a [BladeRF 2.0 micro devic
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DLIBBLADERF_INCLUDE_DIR=/opt/install/libbladeRF/include -DLIBBLADERF_LIBRARIES=/opt/install/libbladeRF/lib/libbladeRF.so` to the cmake command line. The plugin will be built only if the [BladeRF host library](https://github.com/Nuand/bladeRF) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libbladeRF` you will have to add `-DBLADERF_INCLUDE_DIR=/opt/install/libbladeRF` to the cmake command line.
Note that libbladeRF v2 with git tag 2018.08 should be used (official release). The FPGA image v0.7.3 should be used accordingly. The FPGA .rbf file should be copied to the folder where the `sdrangel` binary resides. You can download FPGA images from [here](https://www.nuand.com/fpga_images/) Note that libbladeRF v2 with git tag 2018.08 should be used (official release). The FPGA image v0.7.3 should be used accordingly. The FPGA .rbf file should be copied to the folder where the `sdrangel` binary resides. You can download FPGA images from [here](https://www.nuand.com/fpga_images/)

View File

@ -6,7 +6,7 @@ This input sample source plugin gets its samples from a [HackRF device](https://
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [HackRF host library](https://github.com/mossmann/hackrf) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libhackrf` you will have to add `-DLIBHACKRF_INCLUDE_DIR=/opt/install/libhackrf/include -DLIBHACKRF_LIBRARIES=/opt/install/libhackrf/lib/libhackrf.so` to the cmake command line. The plugin will be built only if the [HackRF host library](https://github.com/mossmann/hackrf) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/libhackrf` you will have to add `-DHACKRF_DIR=/opt/install/libhackrf` to the cmake command line.
The HackRF Host library is also provided by many Linux distributions and is built in the SDRangel binary releases. The HackRF Host library is also provided by many Linux distributions and is built in the SDRangel binary releases.

View File

@ -25,7 +25,7 @@ The plugin will be built only if LimeSuite is installed in your system. To build
Then add the following defines on `cmake` command line: Then add the following defines on `cmake` command line:
`-DLIMESUITE_INCLUDE_DIR=/opt/install/LimeSuite/include -DLIMESUITE_LIBRARY=/opt/install/LimeSuite/lib/libLimeSuite.so` `-DLIMESUITE_DIR=/opt/install/LimeSuite`
<h2>Installation from binary packages</h2> <h2>Installation from binary packages</h2>

View File

@ -11,7 +11,7 @@ This plugin will be built only if the following conditions are met:
- [My fork of libperseus-sdr library](https://github.com/f4exb/libperseus-sdr.git) is installed in your system. You will have to checkout the `fixes` branch which however is the default. There are a few fixes from the original mainly to make it work in a multi-device context. - [My fork of libperseus-sdr library](https://github.com/f4exb/libperseus-sdr.git) is installed in your system. You will have to checkout the `fixes` branch which however is the default. There are a few fixes from the original mainly to make it work in a multi-device context.
- The 24 bit Rx DSP chain is activated in the compilation with the `-DRX_SAMPLE_24BIT=ON` option on the cmake command line. - The 24 bit Rx DSP chain is activated in the compilation with the `-DRX_SAMPLE_24BIT=ON` option on the cmake command line.
If you build it from source and install it in a custom location say: `/opt/install/libperseus` you will have to add `-DLIBPERSEUS_INCLUDE_DIR=/opt/install/libperseus/include -DLIBPERSEUS_LIBRARIES=/opt/install/libperseus/lib/libperseus-sdr.so` to the cmake command line. If you build it from source and install it in a custom location say: `/opt/install/libperseus` you will have to add `-DPERSEUS_DIR=/opt/install/libperseus` to the cmake command line.
&#9758; From version 3.12.0 the Linux binaries are built with the 24 bit Rx option and Perseus input plugin. &#9758; From version 3.12.0 the Linux binaries are built with the 24 bit Rx option and Perseus input plugin.

View File

@ -23,7 +23,7 @@ The plugin will be built only if libiio is installed in your system. To build an
Then add the following defines on `cmake` command line when compiling SDRangel: Then add the following defines on `cmake` command line when compiling SDRangel:
`-DLIBIIO_INCLUDE_DIR=/opt/install/libiio/include -DLIBIIO_LIBRARY=/opt/install/libiio/lib/libiio.so` `-DIIO_DIR=/opt/install/libiio`
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -6,7 +6,7 @@ This input sample source plugin gets its samples from a [RTLSDR device](http://w
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [RTLSDR host library](https://github.com/f4exb/librtlsdr) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/librtlsdr` you will have to add `-DLIBRTLSDR_INCLUDE_DIR=/opt/install/librtlsdr/include -DLIBRTLSDR_LIBRARIES=/opt/install/librtlsdr/lib/librtlsdr.so` to the cmake command line. The plugin will be built only if the [RTLSDR host library](https://github.com/f4exb/librtlsdr) is installed in your system. If you build it from source and install it in a custom location say: `/opt/install/librtlsdr` you will have to add `-DRTLSDR_DIR=/opt/install/librtlsdr` to the cmake command line.
If you want to benefit from the direct sampling you will have to compile and install this library else the RTLSDR library is also provided by many Linux distributions. The SDRangel binary releases are compiled with the direct sampling option. If you want to benefit from the direct sampling you will have to compile and install this library else the RTLSDR library is also provided by many Linux distributions. The SDRangel binary releases are compiled with the direct sampling option.

View File

@ -16,7 +16,7 @@ It is present only in Linux binary releases.
<h2>Build</h2> <h2>Build</h2>
The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_INCLUDE_DIR=/opt/install/cm256cc/include/cm256cc -DCM256CC_LIBRARIES=/opt/install/cm256cc/lib/libcm256cc.so` to the cmake commands. The plugin will be built only if the [CM256cc library](https://github.com/f4exb/cm256cc) is installed in your system. For CM256cc library you will have to specify the include and library paths on the cmake command line. Say if you install cm256cc in `/opt/install/cm256cc` you will have to add `-DCM256CC_DIR=/opt/install/cm256cc` to the cmake commands.
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -10,7 +10,7 @@ Driver is too unstable in Windows randomly stopping the application and causing
<h2>Build</h2> <h2>Build</h2>
As mentioned already the plugin depends on libmirisdr-4. You will have to compile it and install it in your system. When installed in non standard folders the include and library paths have to be specified on the cmake command line. Say if you install `libmirisdr-4` in `/opt/install/libmirisdr` you will have to add `-DLIBMIRISDR_INCLUDE_DIR=/opt/install/libmirisdr/include -DLIBMIRISDR_LIBRARIES=/opt/install/libmirisdr/lib/libmirisdr.so` on the cmake command line. As mentioned already the plugin depends on libmirisdr-4. You will have to compile it and install it in your system. When installed in non standard folders the include and library paths have to be specified on the cmake command line. Say if you install `libmirisdr-4` in `/opt/install/libmirisdr` you will have to add `-DMIRISDR_DIR=/opt/install/libmirisdr` on the cmake command line.
<h2>Interface</h2> <h2>Interface</h2>

View File

@ -14,7 +14,7 @@ The plugin will be built only if XTRX support libraries are installed in your sy
If libraries are installed in a custom place like `/opt/install/xtrx-images` add the following defines on `cmake` command line: If libraries are installed in a custom place like `/opt/install/xtrx-images` add the following defines on `cmake` command line:
`-DLIMESUITE_INCLUDE_DIR=/opt/install/xtrx-images/include -DLIMESUITE_LIBRARY=/opt/install/xtrx-images/lib/libxtrx.so` `-DXTRX_DIR=/opt/install/xtrx-images`
<h2>Interface</h2> <h2>Interface</h2>