Cerbero & MinGW Version

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Cerbero & MinGW Version

Roland Peffer-2
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !

Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Nicolas Dufresne-5
Someone need to do that, that's all.

Nicolas

Le 30 juin 2017 2:19 AM, "Roland Peffer" <[hidden email]> a écrit :
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !

Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Roland Peffer-2
Well yes,

is there any document or script or whatever that helps me on doing that.
How was the 4.7.3 binary toolchain package build that is downloaded by cerebra bootstrap?

Regards,
Roland

On 30. Jun 2017, at 23:33, Nicolas Dufresne <[hidden email]> wrote:

Someone need to do that, that's all.

Nicolas

Le 30 juin 2017 2:19 AM, "Roland Peffer" <[hidden email]> a écrit :
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !

Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Mailing List SVR
In reply to this post by Roland Peffer-2
Hi,

if you are familiar with archlinux you can compile gstreamer and qt from aur:

https://aur.archlinux.org/packages/?O=0&SeB=nd&K=mingw-w64-gst&outdated=&SB=n&SO=a&PP=50&do_Search=Cerca
https://aur.archlinux.org/packages/?O=0&SeB=nd&K=mingw-w64-qt5&outdated=&SB=n&SO=a&PP=50&do_Search=Cerca

archlinux actually ship with mingw 7.1.1, I also suggest to use qt 5.9 that is an lts version instead of 5.8 that will be soon unsupported,

another option is to use the official qt binaries builded with visual studio and gstreamer builded with cerbero,

Nicola

Il 30/06/2017 08:07, Roland Peffer ha scritto:
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !
Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Roland Peffer-2
Hi,

Well maybe I don’t get it, and I forgot to mention that I want to cross compile Gstreamer on Linux for a Win32 target.
So I am confused about what this has to do with archlinux?!

So what I think I need is to upgrade the cebero 4.7.3 toolchain to 5.3.0.. that also should work with qt 5.9

Please correct me if I am wrong!

Regards,
Roland

On 1. Jul 2017, at 09:55, Mailing List SVR <[hidden email]> wrote:

Hi,

if you are familiar with archlinux you can compile gstreamer and qt from aur:

https://aur.archlinux.org/packages/?O=0&SeB=nd&K=mingw-w64-gst&outdated=&SB=n&SO=a&PP=50&do_Search=Cerca
https://aur.archlinux.org/packages/?O=0&SeB=nd&K=mingw-w64-qt5&outdated=&SB=n&SO=a&PP=50&do_Search=Cerca

archlinux actually ship with mingw 7.1.1, I also suggest to use qt 5.9 that is an lts version instead of 5.8 that will be soon unsupported,

another option is to use the official qt binaries builded with visual studio and gstreamer builded with cerbero,

Nicola

Il 30/06/2017 08:07, Roland Peffer ha scritto:
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !
Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Mailing List SVR
Il 01/07/2017 11:06, Roland Peffer ha scritto:
Hi,

Well maybe I don’t get it, and I forgot to mention that I want to cross compile Gstreamer on Linux for a Win32 target.
So I am confused about what this has to do with archlinux?!

archlinux ships with mingw-w64 toolchain that let you cross compile for windows (both 32 and 64 bit), there are pre-made packages in AUR (arch linux user repository) for cross compiling both GStreamer and Qt,

Nicola


So what I think I need is to upgrade the cebero 4.7.3 toolchain to 5.3.0.. that also should work with qt 5.9

Please correct me if I am wrong!

Regards,
Roland

On 1. Jul 2017, at 09:55, Mailing List SVR <[hidden email]> wrote:

Hi,

if you are familiar with archlinux you can compile gstreamer and qt from aur:

https://aur.archlinux.org/packages/?O=0&SeB=nd&K=mingw-w64-gst&outdated=&SB=n&SO=a&PP=50&do_Search=Cerca
https://aur.archlinux.org/packages/?O=0&SeB=nd&K=mingw-w64-qt5&outdated=&SB=n&SO=a&PP=50&do_Search=Cerca

archlinux actually ship with mingw 7.1.1, I also suggest to use qt 5.9 that is an lts version instead of 5.8 that will be soon unsupported,

another option is to use the official qt binaries builded with visual studio and gstreamer builded with cerbero,

Nicola

Il 30/06/2017 08:07, Roland Peffer ha scritto:
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !
Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Nicolas Dufresne-5
In reply to this post by Roland Peffer-2


Le 1 juil. 2017 2:15 AM, "Roland Peffer" <[hidden email]> a écrit :
Well yes,

is there any document or script or whatever that helps me on doing that.
How was the 4.7.3 binary toolchain package build that is downloaded by cerebra bootstrap?

I do believe it was built by hand (msys). What I remember is that it was really unstable back then, and using official binary would crash in the compiler. I think it's different today, and we should try again to bootstrap from official builds. You need to modify the Cerbero recipe to pick from upstream instead of GStreamer mirror.

For your interest, on Linux we use MinGW from the distros, which seems to work (it's also faster). You can generate windows builds compatible with qt this way. Also, long/term, we want to move using meson/msvc instead.

Regards,
Nicolas


Regards,
Roland

On 30. Jun 2017, at 23:33, Nicolas Dufresne <[hidden email]> wrote:

Someone need to do that, that's all.

Nicolas

Le 30 juin 2017 2:19 AM, "Roland Peffer" <[hidden email]> a écrit :
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !

Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Sebastian Dröge-3
In reply to this post by Nicolas Dufresne-5
On Fri, 2017-06-30 at 17:33 -0400, Nicolas Dufresne wrote:
> Someone need to do that, that's all.

There's also a bug for tracking this:
 https://bugzilla.gnome.org/show_bug.cgi?id=775777

If someone wants to help with that, please go ahead.

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (981 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Roland Peffer-2
In reply to this post by Nicolas Dufresne-5
Hi Nicolas,

Thats for the information! Regarding your remark:

> For your interest, on Linux we use MinGW from the distros, which seems to work (it’s also faster). You can generate windows builds compatible with qt > this way. Also, long/term, we want to move using meson/msvc instead.

For the stupid… what do I have to / change in cerebro do to get this done. I mean to build with the MinGW coming with the diistro ( actually gcc 5.3.1 on Ubuntu 16.04.2 ).


On 1. Jul 2017, at 17:11, Nicolas Dufresne <[hidden email]> wrote:



Le 1 juil. 2017 2:15 AM, "Roland Peffer" <[hidden email]> a écrit :
Well yes,

is there any document or script or whatever that helps me on doing that.
How was the 4.7.3 binary toolchain package build that is downloaded by cerebra bootstrap?

I do believe it was built by hand (msys). What I remember is that it was really unstable back then, and using official binary would crash in the compiler. I think it's different today, and we should try again to bootstrap from official builds. You need to modify the Cerbero recipe to pick from upstream instead of GStreamer mirror.

For your interest, on Linux we use MinGW from the distros, which seems to work (it's also faster). You can generate windows builds compatible with qt this way. Also, long/term, we want to move using meson/msvc instead.

Regards,
Nicolas


Regards,
Roland

On 30. Jun 2017, at 23:33, Nicolas Dufresne <[hidden email]> wrote:

Someone need to do that, that's all.

Nicolas

Le 30 juin 2017 2:19 AM, "Roland Peffer" <[hidden email]> a écrit :
Is there a reason why Cerebro still uses MinGW Version 4.7.3 ?

I ask because I run into trouble when I tried to use gstreamer with Qt 5.8 based on MinGW 5.3.0,
as the generated  libstdc++ libraries are not compatible between QT and Gstreamer!

It would be nice if we would have an option to set the  Version of MinGW !

Regards,
Roland

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Nicolas Dufresne-5
In reply to this post by Sebastian Dröge-3
Le lundi 03 juillet 2017 à 08:51 +0300, Sebastian Dröge a écrit :
> On Fri, 2017-06-30 at 17:33 -0400, Nicolas Dufresne wrote:
> > Someone need to do that, that's all.
>
> There's also a bug for tracking this:
>  https://bugzilla.gnome.org/show_bug.cgi?id=775777
>
> If someone wants to help with that, please go ahead.

It is just a matter of updating the bootstrap phase to install the
right packages and then get rid of the part that download and install
binary versions. Last time I tried was a really long time a got,
though, it just worked, so I'm quite positive this is not really hard.
For Windows, few years ago, the official MingW was simply crashing, I
do think MingW have matured a lot since and this should not be an issue
anymore. Some new warning may exist, those are welcome to be address.

regards,
Nicolas
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (188 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Cerbero & MinGW Version

Roland Peffer-2
Hi,

I think I found the real reason for my problems:

What I have are undefined references to __gxx_personality_v0 or runtime errors like 
or

when I tried to mix Qt and gstreamer builds under windows.

The errors are only related to plugins that are linked against the stdc++ library.

My first idea was that this is related to the different MinGW Version ( 5.3.0 coming with QT , and 4.7.3 from cerebro build).

But after I managed to run a cerbero cross build  for win32 under Linux  with the distribution provided gcc 5.3.1
the problem was still there.

The real problem is related to 2 different ways of exception handling in gcc:
The Qt build uses DWARF-2 (DW2) -> __gxx_personality_v0
and the cebero cross builds use setjmp/longjmp (SJLJ) exception handling -> __gxx_personality_sj0

Anyone had the same issue yet and found an easy solution?

Regards Roland



_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Re: Cerbero & MinGW Version

Matthew Waters

That is correct,

Qt and GStreamer are currently built with different c++ exception handling.

In order to have compatible exception handling you need to build *all* components with the same exception handling which would involve either recompiling Qt with SJLJ or recompiling GStreamer with DW2.

If you're attempting to build the qt plugin (for qmlglsink and qmlglsrc) there's a qmake .pro file in there for one to build that plugin with whatever Qt was built with.  That doesn't help with any of the other c++ plugins though.

Cheers
-Matt


On 05/07/17 16:34, Roland Peffer wrote:
Hi,

I think I found the real reason for my problems:

What I have are undefined references to __gxx_personality_v0 or runtime errors like 
or

when I tried to mix Qt and gstreamer builds under windows.

The errors are only related to plugins that are linked against the stdc++ library.

My first idea was that this is related to the different MinGW Version ( 5.3.0 coming with QT , and 4.7.3 from cerebro build).

But after I managed to run a cerbero cross build  for win32 under Linux  with the distribution provided gcc 5.3.1
the problem was still there.

The real problem is related to 2 different ways of exception handling in gcc:
The Qt build uses DWARF-2 (DW2) -> __gxx_personality_v0
and the cebero cross builds use setjmp/longjmp (SJLJ) exception handling -> __gxx_personality_sj0

Anyone had the same issue yet and found an easy solution?

Regards Roland




_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (527 bytes) Download Attachment
Loading...