[Bug 720778] gst-uninstalled requires building with libtool

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Jan 16 06:57:40 PST 2016


https://bugzilla.gnome.org/show_bug.cgi?id=720778

Philip Withnall <bugzilla at tecnocode.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla at tecnocode.co.uk

--- Comment #11 from Philip Withnall <bugzilla at tecnocode.co.uk> ---
(In reply to Julien Isorce from comment #10)
> > compilers/linkers could (rightfully) fail as the .la file is something they
> > don't understand.
> This is currently the case in upstream and with the classic gcc and on
> linux. (.la are in pc uninstalled). Also I am confused since you said in
> other bug that .la are required for proper link/runtime.
> 
> How to move forward then ? :)
> 
> With current gst upstream I cannot compile chromium within gst-uninstalled.
> I really need whatever fix (mine or Heinrich's script) which fixes the
> problem. (so that with the fixes I can link and run Chromium within
> gst-uninstalled)
> 
> To avoid .la errors:
> 
> gcc $(pkg-config --cflags --libs-only-L gstreamer-1.0) test.c \
>     -o test $(pkg-config --libs-only-l gstreamer-1.0)
> 
> Chromium was already using these options --libs-only-L and --libs-only-l for
> glib for example.
> See:
> https://chromium.googlesource.com/chromium/src/+/master/build/linux/system.
> gyp#923
> 
> So I suggest to have both (-L, -l and .la) in the pc uninstalled. Apps that
> do not use libtool will have to use --libs-only-L and --libs-only-l. Which
> provide a way to compile against gstreamer, what it is not possible with
> current upstream.
> 
> I am open to any suggestion :)

As Sebastian says, I don't think it's a good idea to have both .la files and
-L/-l flags in the *-uninstalled.pc file.

Note that your use of the .libs directory in -L flags implies that libtool is
being used //somewhere//, because that's a libtool-specific output directory.

For Linux, I think a patch based on applying the script by Heinrich seems
reasonable. Basically, I can't see why the *-uninstalled.pc file has to look
any different to the normal *.pc file in structure; it just needs the
uninstalled -L paths rather than the installed ones.

However, the problems will probably start to appear when building against
GStreamer on other (non-Linux) platforms. I don't really know what libtool does
here, except that its main purpose is to abstract the differences between
platforms. That said, are the .pc files actually used for non-Linux builds? If
not, there's no problem.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list