[Libquicktime-devel] LIBquicktime does not need libGL, but libquicktime.pc specifies it

Loïc Minier lool+sf at via.ecp.fr
Fri Jan 25 13:01:49 UTC 2008


        Hi,

On Fri, Jan 25, 2008, Richard Spindler wrote:
> I just recieved a debian bugreport, that a package that depended on
> libquicktime failed to build, because the -lGL requirement wasn't
> satisfied.

 This is likely a bug in libquicktime in all cases.

 You say libquicktime returned a -lGL flag, but I see no GL build-dep,
 so if it built with OpenGL support, it was an accident, and we should
 have configure libquicktime with opengl disabled, or added the proper
 build-deps to make sure it always build with opengl support.

 From a look at my build log, I see that libgl1-mesa-glx was pulled
 presumably by a higher level build-dep.

 I guess upstream favors GL support since it's enabled by default if
 available, so I'll fix this by ensuring that GL is always available.


 Next, the resulting libquicktime.pc file when building with OpenGL
 support has:
    Libs: -L${libdir} -lquicktime -lGL -lpthread -lm -lz -ldl.
 this means that libquicktime.pc as shipped in libquicktime-dev is
 unusable unlesss libquicktime-dev depends on everything above which it
 doesn't at the moment (it should depend on the -dev packages for lGL,
 and lz).

 Please note that upstream could help here in only listing modules and
 libs which all programs using libquicktime are required to use (for
 shared linking) in its .pc files, and not all libs that libquicktime
 uses.  Listing all libs used by libquicktime on the link command lines
 is only needed for static linking; recent pkg-config permit listing
 these libs in Libs.private or modules in Requires.private.  Upstream
 should use this facility for libs required by libquicktime but not by
 all libquicktime consumers and check for the proper pkg-config version.

 Also, as far as I see, libquicktime has no reason to link to lGL; it
 doesn't seem to refer to any of its symbols; upstream should fix the
 build to not link libquicktime to superfluous libraries, this causes
 slower load times and useless deps in Debian packages.


 Finally, lqt-config seems to return the same libs as libquicktime.pc's
 Libs, and offers to static/shared distinction.  I don't know whether
 this tool is deprecated, IMO it should be, but if not it should gain a
 private flags.  Until then, its output shouldn't be considered for
 libquicktime-dev's deps in Debian as we have the more flexible
 pkg-config mechanism already.


 I'd appreciate if you could take the appropriate upstream measures to:
 - fix the .pc and require newer pkg-config
 - fix the build to not link libquicktime to lGL
 - act on lqt-config

 On my side, I'll work on the Debian packaging to:
 - add proper GL support
 - try to drop the lGL dep of libquicktime with a quick and dirty
   workaround
 - add proper deps to libquicktime-dev for what it requires in the end

    Bye,
-- 
Loïc Minier



More information about the pkg-multimedia-maintainers mailing list