Adding GStreamer plugins

Kirill Kirichenko kirill.kirichenko at oracle.com
Thu Mar 27 08:58:12 UTC 2014



On 27.03.2014 03:53, Michael Berry wrote:
> Unfortunately I seem to have become a bit stuck at step one! I'm
> probably missing a few things that are rather obvious, but haven't
> really got much experience at all in this area, so am relying on
> haphazard Googling and a bit of guesswork! It may well be that updating
> the framework is a bit beyond my skillset for the time I have available
> at the moment, but I'll keep pushing on if anyone's willing to give me a
> bit of guidance on it.
Yes. It's not trivial at all. You need to have enough patience to go 
through all the steps.

> Firstly libffi - I've downloaded that, put it in the 3rd_party folder,
> and have run "./configure", "make", then "make install" (all under
> cygwin.) That seems fine; so I've now got "libffi.a" (as well as
> "cygffi-6.dll") in "3rd_party\libffi\i686-pc-cygwin\.libs".
The challenge here is first to build libffi with Mircosoft C compiler 
and linker. Here at the first stage you should take libffi and put it 
somewhere separately from javafx. Then try to build it with 
VisualStudio. Once you succeed you should create a makefile in the 
manner of javafx makefiles for Media. As the result of this step you'll 
get a bunch of C/Header files, the makefile. Everything else can be 
deleted. The resulting makefile should be able to build libffi.lib - 
statically linked library.

> I've then grabbed glib 2.40, placed that in the glib folder, and
> attempted the same process - this first complained about a lack of
> libiconv, so I grabbed that and set the appropriate flags to point to
> it, and now I get the following:
>
> /configure: error: in
> `/cygdrive/c/Users/Michael/Documents/JFX8/modules/media/src/main/native/gstreamer/3rd_party/glib/glib-2.28.8':/
> /configure: error: The pkg-config script could not be found or is too
> old.  Make sure it is in your PATH or set the PKG_CONFIG environment
> variable to the full path to pkg-config./
> /
> /
> /Alternatively, you may set the environment variables LIBFFI_CFLAGS and
> LIBFFI_LIBS to avoid the need to call pkg-config./

For GLib you can disable iconv in configure. This is the next step. 
Let's start with libffi first.

>
> I'm assuming this is something to do with the fact it can't find libffi,
> but I'm unaware of how to tell it that libffi is in the given folder!
> I'm also assuming that calling config / make etc. manually is the way to
> go for the time being - I think I'd be at even more of a loss trying to
> integrate it into the gradle build script.
The reason for this to be "such non trivial" is/was the download size. 
We aimed the minimal possible download size. This is probably not an 
issue anymore and we can switch to simpler solutions like you originally 
did - download, unzip, run configure and here we go.

K


More information about the openjfx-dev mailing list