Bug#790446: mpv: Warning about mismatch between build and run-time ffmpeg libraries
Guillem Jover
guillem at debian.org
Tue Jun 30 19:40:52 UTC 2015
Hey!
On Mon, 2015-06-29 at 21:45:26 +0200, Andreas Cadhalpun wrote:
> (We plan to transition all packages from Libav to FFmpeg soon, see [1].)
Yeah, I'm aware, eagerly waiting it!
> On 29.06.2015 18:01, Guillem Jover wrote:
> > The mpv program emits the following warning on startup:
> >
> > ,---
> > Warning: mpv was compiled against a different version of ffmpeg than the shared
> > library it is linked against. This can expose subtle ABI compatibility issues
> > and can lead to misbehavior and crashes.
> > `---
>
> I guess this warning is meant as sanity check for those compiling mpv themselves.
> (The ffmpeg binary also checks for matching compile-time and run-time libraries.)
> These warnings aren't very useful in a distribution, where package dependencies
> ensure ABI compatibility.
Perhaps, but the comment at
<http://sources.debian.net/src/mpv/0.9.2-1%2Bffmpeg/common/av_log.c/#L229>
was not very soothing, so that was one additional reason for the bug. :)
> > Which, to me points out there's a problem somewhere. Either:
> >
> > * the warning is bogus, and
> > - mpv should be silenced in common/av_log.c:print_libav_versions, or
>
> If the warning bothers you, this would be the way to go.
It's not so much that it bothers me; as I've mentioned, either the
warning is valid and there's a potential ABI problem, or it is not
and then emitting an alarming message that the user can hardly fix
on each invocation might be slightly taxing, it is at least a sure
way to train users to ignore valid ones. :)
> > - ffmpeg should not be exposing the minor versions in its macros
> > and *_version() functions, so that such warnings do not trigger, or
>
> The minor versions are used to e.g. indicate new features, so that programs
> can do exact compile-time checks. Not exposing them would break that.
How does the libav project handle this? I don't remember seeing such
warning with an mpv compiled against that.
> > * the warning is valid, and
> > - mpv needs a strict versioned dependency, or
>
> The dependencies are calculated by the symbols mechanism.
Sure.
> No stricter dependencies should be necessary.
In principle, but I was going by the comment on that source file. Sorry,
I should have provided a direct link initially.
> > - mpv very unfortunately needs to statically link against ffmpeg, or
>
> Not that, please!
Well, I abhor such kind of solutions with a passion, but if there's no
better option…
Thanks,
Guillem
More information about the pkg-multimedia-maintainers
mailing list