Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem building gr_sdrplay3 #22

Open
sksail92 opened this issue Feb 7, 2022 · 3 comments
Open

Problem building gr_sdrplay3 #22

sksail92 opened this issue Feb 7, 2022 · 3 comments
Assignees

Comments

@sksail92
Copy link

sksail92 commented Feb 7, 2022

Hello Franco,
I am trying to build gr_sdrplay3 on a Raspberry pi. It seems to be tricky as I do have to build almost everything from srcatch as the
packages I can download via APT are quite old.
Nevertheless afte a while I managed to build gnuradio (and a lot of dependencies boost gnuradio gr-osmosdr gr-sdrplay3 pybind11 pygccxml SoapySDR SoapySDRPlay spdlog volk) from the git repos.

Only gr-sdrplay3 throws errors during Cmake and I have no idea why. The build process seems to be quite complicated and
I have no Idea where to start.
Maybe You are able to give some hints.
Kind regards
Harald

I do get the following error messages running "cmake .." from the build directory:

...
-- Configuring done
CMake Error at /usr/local/share/cmake/pybind11/pybind11Tools.cmake:165 (add_library):
Target "sdrplay3_python" links to target "Python::Module" 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/local/lib/cmake/gnuradio/GrPybind.cmake:260 (pybind11_add_module)
python/bindings/CMakeLists.txt:32 (GR_PYBIND_MAKE_OOT)

CMake Error at /usr/local/share/cmake/pybind11/pybind11Tools.cmake:165 (add_library):
Target "sdrplay3_python" links to target "Python::Module" 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/local/lib/cmake/gnuradio/GrPybind.cmake:260 (pybind11_add_module)
python/bindings/CMakeLists.txt:32 (GR_PYBIND_MAKE_OOT)

CMake Error at lib/CMakeLists.txt:42 (add_library):
Target "gnuradio-sdrplay3" links to target "Python::Module" 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:42 (add_library):
Target "gnuradio-sdrplay3" links to target "Python::Module" 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
CMake Generate step failed. Build files cannot be regenerated correctly._

@fventuri
Copy link
Owner

fventuri commented Feb 8, 2022

@sksail92
I did build GNU Radio (version 3.10) and this gr-sdrplay3 OOT module (from the gnuradio-3.10 branch) on my Raspberry Pi 4 a few times (both 32 bit and 64 bit), and I've never seen error messages like yours; at first glance they make me think that something is wrong somewhere with the Pybind11 installation, but I can't really tell exactly what is the problem.

I think it might be helpful to show you my steps (more or less) so perhaps you can give it a try too:

I hope this helps,
Franco

@fventuri fventuri self-assigned this Feb 8, 2022
@sksail92
Copy link
Author

Hello Franco,
with your help I was finally able to build gr_sdrplay3. The main problem was using the "master" branch. Than there were a lot of Pyton libs missing. I think that the "openplotter" software reconfigured the Raspberry in an odd way.

In the end I needed to add a lot of information in the cmake call to make it work.

cmake -DENABLE_PYTHON=1 -DCMAKE_BUILD_TYPE=Release
-DPYTHON_INCLUDE_DIR=$(python3 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())")
-DPYTHON_LIBRARY=$(python3 -c "import distutils.sysconfig as sysconfig; print(sysconfig.get_config_var('LIBDIR'))")
-DPYTHON_EXECUTABLE=/usr/bin/python3
../

Thanks again for Your help.

My goal using gr-sdrplay3 with an sdrplay RspDx is to receive Navetx, Weatherfax and weather reports via RTTY on a boat.
If possibe all three at the same time as the stations are all located on the long- and medium wave band.

@fventuri
Copy link
Owner

@sksail92 - I honestly am surprised that you had to add cmake options like ENABLE_PYTHON, which should already be set to ON in GnuradioConfig.cmake (which I think comes from GrPython.cmake: https://github.com/gnuradio/gnuradio/blob/main/cmake/Modules/GrPython.cmake) or CMAKE_BUILD_TYPE=Release, which should already be set here: https://github.com/fventuri/gr-sdrplay3/blob/gnuradio-3.10/CMakeLists.txt#L24

To decode NAVTEX in GNU Radio you might find useful the GNU Radio OOT module gr-navtex I wrote: https://github.com/fventuri/gr-navtex

Best of luck with your interesting project!
Franco

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants