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

Compilation issue on latest Debian 12.8 #36

Open
rems28 opened this issue Jan 3, 2025 · 3 comments
Open

Compilation issue on latest Debian 12.8 #36

rems28 opened this issue Jan 3, 2025 · 3 comments

Comments

@rems28
Copy link

rems28 commented Jan 3, 2025

Hello, I'm trying to build your project, and I have compilation issue with GStreamer that complains about Meson. He now want a minimum meson version to 1.1 and Debian 12 has 1.0.1. I'm trying to compile without --enable-latest, but it's continues to compile against gstreamer-1.24.8.

gstreamer meson prefix: '/home/onvif/onvif/subprojects/gstreamer/build/dist'
gstreamer meson download subprojects gstreamer
gstreamer meson setup gstreamer
gstreamer meson The Meson build system
gstreamer meson gstreamer meson Version: 1.0.1
gstreamer meson gstreamer meson Source dir: /home/onvif/onvif/subprojects/gstreamer
gstreamer meson gstreamer meson Build dir: /home/onvif/onvif/subprojects/gstreamer/build
gstreamer meson gstreamer meson Build type: native build
gstreamer meson gstreamer meson 
gstreamer meson gstreamer meson meson.build:1:0: ERROR: Meson version is 1.0.1 but project requires >= 1.1
gstreamer meson gstreamer meson 
gstreamer meson gstreamer meson A full log can be found at /home/onvif/onvif/subprojects/gstreamer/build/meson-logs/meson-log.txt```

Thanks for your project
@Quedale
Copy link
Owner

Quedale commented Jan 3, 2025

Good day!

This should be an easy fix. I never realized that gstreamer increased the minimum meson version and I only check for version 0.63.2.
Autogen.sh should fallback to a pip package instead of using the distro package.

Replace line 955 of autogen.sh from:

if [ ! -z "$(progVersionCheck project="meson" program=meson linenumber=1 lineindex=0 major=0 minor=63 micro=2)" ]; then

to the following:

if [ ! -z "$(progVersionCheck project="meson" program=meson linenumber=1 lineindex=0 major=1 minor=1)" ]; then

The difference is simply changing major=0 minor=63 micro=2 to major=1 minor=1.

I should have some spare time this evening to try to reproduce the issue.



Thanks for this feedback!

@Quedale
Copy link
Owner

Quedale commented Jan 3, 2025

I forgot to clarify, autogen.sh will automatically build missing dependencies, including gstreamer.
Using "--enable-latest" only ensures that the latest supported gstreamer package will be used.

You can try to install your distro's gstreamer package and run autogen.sh without '--enable-latest'.
This will make onvifmgr use your distro's shared gstreamer ibraries.
apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

Some of these package may not be necessary since I never bothered filtering them out.
This list is also for Ubuntu 22, so it might be slightly different with debian 12.

@Quedale
Copy link
Owner

Quedale commented Jan 4, 2025

I just committed a fix to properly handle the minimum version of meson.
You can pull the latest changes and give it a go.

Let me know how that goes!

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