If that can help those interested in GQRX under GNURadio 3.8 (this worked for me under an Ubuntu 1.04 fresh install):

  • installs from source gr3.8 branch of git.osmocom.org/gr-osmosdr (not yet available as debian package)
  • install some GQRX dependancies
  • sudo apt-get install qtbase5-dev qtdeclarative5-dev libqt5svg5 libqt5svg5-dev libasound2  libasound2-dev libjack-dev libportaudio2 portaudio19-dev libpulse-dev
  • installs from source branch master from https://github.com/csete/gqrx (not yet available as debian package)
regards
On 04/02/2020 08:45, Sylvain Munaut wrote:
Without a .pc in gr-iqbal, gr-osmosdr (3.8 branch) will not build as it
can't find gr-iqbal.
I just had a look at gr-osmosdr-0.1.4.127-3.mga7.src.rpm and this is
not using the official code from the gr3.8 branch of
git.osmocom.org/gr-osmosdr
The code in that repo at absolutely no point will ever look for a pkg
config file.

In 3.8 the modules install 3 cmake specific files :
 gnuradio-osmosdrConfig.cmake
 gnuradio-osmosdrTargets.cmake
 gnuradio-osmosdrTargets-release.cmake

and these contain all the informations needed by cmake to know which
libraries to link and which include directory the add to the include
path and any dependency on other cmake modules.

Theses are also automatically generated by cmake, without the need to
duplicate the information in another file.
If you look at CMakeList for iqbal for instance :

target_include_directories(gnuradio-iqbalance
    PRIVATE ${LIBOSMODSP_SEL_INCLUDE_DIRS}
    PUBLIC ${Boost_INCLUDE_DIRS}
    PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
    PUBLIC $<INSTALL_INTERFACE:include>
  )

the PRIVATE / PUBLIC / INTERFACE / ... are all specifiers for cmake to
generate those files properly and include everything needed
automatically.

If this doesn't work for you, either :
 - You're not using the right source as pointed out above ...
 - Something is broken in the gr-iqbal / gr-osmosdr CMake that makes
it not work properly ( wronge PRIVATE / PUBLIC specifier or something
omitted or something like this )
 - Something else in your setup is broken that breaks cmake's module system

In anycase, none of this requires pkg-config files.


Cheers,

   Sylvain

Reply via email to