Questions on MinGW configuration of GStreamer SDK Windows build

Andoni Morales ylatuya at gmail.com
Thu Jan 17 03:29:36 PST 2013


2013/1/16 4ernov <4ernov at gmail.com>:
> Hello,
>
> not sure if it's the right place for questions concerning GStreamer
> SDK, but still here're some.
>
> I have strange problems building helloworld Gst application using
> MinGW and GStreamer SDK Windows build (2012.11): if I compile the
> application using latest MinGW with gcc-4.7.2 and Dwarf2 exception
> model it fails to start with message about undefined symbol
> __gxx_personality_sj0 in libstdc++6. As I found out, it could mean
> that GStreamer SDK itself compiled using gcc with sjlj exception
> model. I still can't understand how C++ exceptions and libstdc++6
> concerned pure C program and libraries.
>
> Then I found another MinGW build with gcc-4.6.2 and sjlj exception
> model. I've tried to build another application which also depends on
> Qt4, which I build with this MinGW version, too. As a result I failed
> to build my project due to compilation error, somehow pthread.h in
> GStreamer's include directory requires nanosleep() existance in time.h
> in MinGW and somehow fails to find it. Maybe, the reason is that MinGW
> version GStreamer SDK was built against has also another threading
> model.
>
> So, there're two questions:
> 1. What exception and threading model of MinGW version which GStreamer
> SDK (2012.11 in particular) was built against?
> 2. Is there any problems with building the SDK using latest MinGW stable build?
>
> I think, it would be nice to either point out build configuration on
> gstreamer.com or prepare several builds with different exception
> models. It seems to be so important information if one wouldn't build
> applications with Visual Studio and prefer MinGW.

Hi Alexey,

Unfortunately you can't use Dwarf2 exception model on windows for
64-bit applications [1], so sjlj exception model must be used instead.
As explained in the docs [2], if you want to use the SDK to build from
sources other projects with Msys/MinGW, so should use the bootstrap
command. It will download and setup the MinGW toolchain for you, the
same exact toolchain use to build the SDK. We do not support building
projects against the SDK with any other toolchain.

Cheers,
Andoni

[1] http://sourceforge.net/apps/trac/mingw-w64/wiki/Exception%20Handling
>
> Thanks,
> Alexey Chernov
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



-- 
Andoni Morales Alastruey

LongoMatch:The Digital Coach
http://www.longomatch.ylatuya.es


More information about the gstreamer-devel mailing list