gnss-sdr / gnss-sdr

GNSS-SDR, an open-source software-defined GNSS receiver
https://gnss-sdr.org
GNU General Public License v3.0
1.65k stars 593 forks source link

Failed to install the gr-osmosdr #492

Closed dengxu3 closed 3 years ago

dengxu3 commented 3 years ago

Hi, I successfully built and installed the latest version of GNSS-SDR by installing dependencies using software packages.

My computer OS is Ubuntu 18.04.5 LTS 64-bit.

For using the LimeSDR as a RF signal input, as I known, to build OSMOSDR support is needed, but some fatal errors occurred when I followed the instructions in README.md "install the OsmoSDR library and GNU Radio's source block".

Error details are below:

$ cmake ../ -Wno-dev
-- The CXX compiler identification is GNU 7.5.0
-- The C compiler identification is GNU 7.5.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
-- 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
-- Build type not specified: defaulting to release.
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") 
-- Found LOG4CPP: /usr/lib/x86_64-linux-gnu/liblog4cpp.so
-- Checking for module 'gmp'
--   No package 'gmp' found
-- Found GMP: /usr/lib/x86_64-linux-gnu/libgmpxx.so  
-- Checking for module 'mpir >= 3.0'
--   No package 'mpir' found
-- Could NOT find MPIR (missing: MPIRXX_LIBRARY MPIR_LIBRARY MPIR_INCLUDE_DIR) 
-- Found MPLIB: /usr/lib/x86_64-linux-gnu/libgmpxx.so  
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   date_time
--   program_options
--   filesystem
--   system
--   regex
--   thread
--   unit_test_framework
--   chrono
--   atomic
-- Found VOLK: Volk::volk  
-- User set python executable /usr/bin/python3
-- Found PythonInterp: /usr/bin/python3 (found version "3.6.9") 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so (found suitable exact version "3.6.9") 
-- Checking for module 'sndfile'
--   No package 'sndfile' found
-- Could NOT find SNDFILE (missing: SNDFILE_LIBRARIES SNDFILE_INCLUDE_DIRS) 
-- Checking for module 'fftw3f >= 3.0'
--   Found fftw3f , version 3.3.7
-- Found FFTW3f: /usr/lib/x86_64-linux-gnu/libfftw3f.so  
-- Found Git: /usr/bin/git  
-- Extracting version information from git describe...
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   chrono
--   thread
--   system
--   date_time
--   atomic
-- 
-- The build system will automatically enable all components.
-- Use -DENABLE_DEFAULT=OFF to disable components by default.
-- Searching for GNURadio-Blocks...
-- Checking for module 'sndfile'
--   No package 'sndfile' found
-- Could NOT find SNDFILE (missing: SNDFILE_LIBRARIES SNDFILE_INCLUDE_DIRS) 
--  Found GNURadio-Blocks: 1
-- Searching for IQ Balance...
-- Could NOT find gnuradio-iqbalance (missing: gnuradio-iqbalance_DIR)
--  Found IQ Balance: 0
-- Searching for UHD Drivers...
-- Checking for module 'uhd'
--   Found uhd, version 003.010.003.000-0-unknown
-- Found UHD: /usr/lib/x86_64-linux-gnu/libuhd.so  
--  Found UHD Driver: TRUE
-- Searching for UHD Block...
--  Found UHD Block: 1
-- Searching for Volk...
--  Found Volk: 1
-- Checking for module 'librtlsdr'
--   No package 'librtlsdr' found
-- librtlsdr not found.
-- Checking for module 'libhackrf'
--   No package 'libhackrf' found
-- Could NOT find LibHackRF (missing: LIBHACKRF_LIBRARIES LIBHACKRF_INCLUDE_DIRS) 
-- Checking for module 'libairspy'
--   No package 'libairspy' found
-- Could NOT find LibAIRSPY (missing: LIBAIRSPY_LIBRARIES LIBAIRSPY_INCLUDE_DIRS) 
-- Checking for module 'libairspyhf'
--   No package 'libairspyhf' found
-- Could NOT find LibAIRSPYHF (missing: LIBAIRSPYHF_LIBRARIES LIBAIRSPYHF_INCLUDE_DIRS) 
-- Checking for module 'libbladeRF'
--   No package 'libbladeRF' found
-- libbladeRF not found.
-- Checking for module 'libgnuradio-fcdproplus'
--   No package 'libgnuradio-fcdproplus' found
-- Found gnuradio-fcdproplus: /usr/include, /usr/lib/x86_64-linux-gnu/libgnuradio-fcdproplus.so
-- Could NOT find SoapySDR (missing: SoapySDR_DIR)
-- Checking for module 'libfreesrp'
--   No package 'libfreesrp' found
-- libfreesrp not found.
-- Checking for module 'libxtrx'
--   No package 'libxtrx' found
-- libxtrx not found.
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so (found suitable version "3.6.9", minimum required is "3") 
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- Found pybind11: /usr/local/include (found version "2.6.3" dev1)
-- 
-- Configuring Python support support...
--   Dependency PYTHONLIBS_FOUND = TRUE
--   Dependency pybind11_FOUND = 1
--   Enabling Python support support.
--   Override with -DENABLE_PYTHON=ON/OFF
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
You have called ADD_LIBRARY for library gnuradio-osmosdr without any source files. This typically indicates a problem with your CMakeLists.txt file
-- 
-- Configuring high resolution timing...
-- Performing Test HAVE_CLOCK_GETTIME
-- Performing Test HAVE_CLOCK_GETTIME - Success
-- Performing Test HAVE_MACH_ABSOLUTE_TIME
-- Performing Test HAVE_MACH_ABSOLUTE_TIME - Failed
-- Performing Test HAVE_QUERY_PERFORMANCE_COUNTER
-- Performing Test HAVE_QUERY_PERFORMANCE_COUNTER - Failed
--   High resolution timing supported through clock_gettime.
-- 
-- Configuring Osmocom IQ Imbalance Correction support...
--   Dependency gnuradio-iqbalance_FOUND = 0
--   Disabling Osmocom IQ Imbalance Correction support.
--   Override with -DENABLE_IQBALANCE=ON/OFF
-- 
-- Configuring FUNcube Dongle support...
--   Dependency GNURADIO_FCDPP_FOUND = TRUE
--   Enabling FUNcube Dongle support.
--   Override with -DENABLE_FCD=ON/OFF
-- 
-- Configuring IQ File Source & Sink support...
--   Dependency gnuradio-blocks_FOUND = 1
--   Enabling IQ File Source & Sink support.
--   Override with -DENABLE_FILE=ON/OFF
-- 
-- 
-- Configuring Osmocom RTLSDR support...
--   Dependency LIBRTLSDR_FOUND = FALSE
--   Disabling Osmocom RTLSDR support.
--   Override with -DENABLE_RTL=ON/OFF
-- 
-- Configuring RTLSDR TCP Client support...
--   Dependency gnuradio-blocks_FOUND = 1
--   Enabling RTLSDR TCP Client support.
--   Override with -DENABLE_RTL_TCP=ON/OFF
-- 
-- Configuring Ettus USRP Devices support...
--   Dependency UHD_FOUND = TRUE
--   Dependency gnuradio-uhd_FOUND = 1
--   Enabling Ettus USRP Devices support.
--   Override with -DENABLE_UHD=ON/OFF
-- 
-- Configuring HackRF & rad1o Badge support...
--   Dependency LIBHACKRF_FOUND = FALSE
--   Disabling HackRF & rad1o Badge support.
--   Override with -DENABLE_HACKRF=ON/OFF
-- 
-- Configuring nuand bladeRF support...
--   Dependency LIBBLADERF_FOUND = FALSE
--   Disabling nuand bladeRF support.
--   Override with -DENABLE_BLADERF=ON/OFF
-- 
-- Configuring RFSPACE Receivers support...
--   Enabling RFSPACE Receivers support.
--   Override with -DENABLE_RFSPACE=ON/OFF
-- 
-- Configuring AIRSPY Receiver support...
--   Dependency LIBAIRSPY_FOUND = FALSE
--   Disabling AIRSPY Receiver support.
--   Override with -DENABLE_AIRSPY=ON/OFF
-- 
-- Configuring AIRSPY HF+ Receiver support...
--   Dependency LIBAIRSPYHF_FOUND = FALSE
--   Disabling AIRSPY HF+ Receiver support.
--   Override with -DENABLE_AIRSPYHF=ON/OFF
-- 
-- Configuring SoapySDR support support...
--   Dependency SoapySDR_FOUND = 0
--   Disabling SoapySDR support support.
--   Override with -DENABLE_SOAPY=ON/OFF
-- 
-- Configuring Red Pitaya SDR support...
--   Enabling Red Pitaya SDR support.
--   Override with -DENABLE_REDPITAYA=ON/OFF
-- 
-- Configuring FreeSRP support support...
--   Dependency LIBFREESRP_FOUND = FALSE
--   Disabling FreeSRP support support.
--   Override with -DENABLE_FREESRP=ON/OFF
-- 
-- Configuring XTRX SDR support...
--   Dependency LIBXTRX_FOUND = FALSE
--   Disabling XTRX SDR support.
--   Override with -DENABLE_XTRX=ON/OFF
-- Python checking for pygccxml - not found
-- 
-- ######################################################
-- # Gnuradio enabled components                         
-- ######################################################
--   * Python support
--   * FUNcube Dongle
--   * IQ File Source & Sink
--   * RTLSDR TCP Client
--   * Ettus USRP Devices
--   * RFSPACE Receivers
--   * Red Pitaya SDR
-- 
-- ######################################################
-- # Gnuradio disabled components                        
-- ######################################################
--   * Osmocom IQ Imbalance Correction
--   * Osmocom RTLSDR
--   * HackRF & rad1o Badge
--   * nuand bladeRF
--   * AIRSPY Receiver
--   * AIRSPY HF+ Receiver
--   * SoapySDR support
--   * FreeSRP support
--   * XTRX SDR
-- 
-- Building for version: 0.2.0.0 / 0.2.0
-- Using install prefix: /usr/local
-- Configuring done
CMake Error at /usr/local/share/cmake/pybind11/pybind11Tools.cmake:166 (add_library):
  Target "osmosdr_python" links to target "sndfile::sndfile" but the target
  was not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?
Call Stack (most recent call first):
  /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GrPybind.cmake:243 (pybind11_add_module)
  python/bindings/CMakeLists.txt:28 (GR_PYBIND_MAKE_OOT)

CMake Error at /usr/local/share/cmake/pybind11/pybind11Tools.cmake:166 (add_library):
  Target "osmosdr_python" links to target "sndfile::sndfile" but the target
  was not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?
Call Stack (most recent call first):
  /usr/lib/x86_64-linux-gnu/cmake/gnuradio/GrPybind.cmake:243 (pybind11_add_module)
  python/bindings/CMakeLists.txt:28 (GR_PYBIND_MAKE_OOT)

CMake Error at lib/CMakeLists.txt:51 (add_library):
  Target "gnuradio-osmosdr" links to target "sndfile::sndfile" but the target
  was not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?

CMake Error at lib/CMakeLists.txt:51 (add_library):
  Target "gnuradio-osmosdr" links to target "sndfile::sndfile" but the target
  was not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?

-- Generating done
-- Build files have been written to: /home/sys503/dx/gnss-sdr/src/osmo-sdr/software/gr-osmosdr/build
$ make 
Scanning dependencies of target gnuradio-osmosdr
[  3%] Building CXX object lib/CMakeFiles/gnuradio-osmosdr.dir/source_impl.cc.o
In file included from /home/sys503/dx/gnss-sdr/src/osmo-sdr/software/gr-osmosdr/lib/source_impl.cc:36:0:
/osmo-sdr/software/gr-osmosdr/lib/fcd/fcd_source_c.h:25:10: fatal error: fcdproplus/fcd.h: no such file or content
 #include <fcdproplus/fcd.h>
          ^~~~~~~~~~~~~~~~~~
compilation terminated.
lib/CMakeFiles/gnuradio-osmosdr.dir/build.make:62: recipe for target 'lib/CMakeFiles/gnuradio-osmosdr.dir/source_impl.cc.o' failed
make[2]: *** [lib/CMakeFiles/gnuradio-osmosdr.dir/source_impl.cc.o] Error 1
CMakeFiles/Makefile2:152: recipe for target 'lib/CMakeFiles/gnuradio-osmosdr.dir/all' failed
make[1]: *** [lib/CMakeFiles/gnuradio-osmosdr.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

Any advice will be appreciated.

dengxu3 commented 3 years ago

It is no big deal. I found it is no need to build OSMOSDR support since it already built well in the next branch. Do not update the GNU radio to 3.9.

SpaceJacket19 commented 2 years ago

@dengxu3 I'm having the same issue. What exactly did you do to get it to run? Did you just build the next branch of gnss-sdr and not worry about osmoSDR at all? Any help is much appreciated!