[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Mingw-cross-env-list] Deploying Qt 5 applications on Windows
From: |
Paul Boddie |
Subject: |
Re: [Mingw-cross-env-list] Deploying Qt 5 applications on Windows |
Date: |
Thu, 8 May 2014 14:36:33 +0200 |
User-agent: |
KMail/1.12.4 (Linux/2.6.32-431.11.2.el6.x86_64; KDE/4.3.4; x86_64; ; ) |
Following up to myself again...
On Wednesday 07 May 2014 17:42:52 Paul Boddie wrote:
> On Wednesday 07 May 2014 14:27:57 you wrote:
> > On 7 May 2014, at 22:00, Paul Boddie <address@hidden> wrote:
> > > On Tuesday 06 May 2014 17:17:14 Paul Boddie wrote:
> > >> Attempting to run the same program on Windows 7 Professional just
> > >> gives me an unhelpful Windows dialogue box more or less telling me
> > >> that the program crashed.
> >
> > What happens when you run the test program? You’ll find it in:
> >
> > <path to mxe>/usr/<target>/bin/test-qt5.exe
>
> This program runs successfully under Wine, although it does crash upon exit
> with the following error:
>
> Unhandled exception: divide by zero in 32-bit code (0x00c58210).
This seems somewhat difficult to eradicate, but I think it could be a Wine
problem.
[...]
> Currently, I'm rebuilding with a highly sanitised environment, which is
> what I should have done to start with, I guess, and I'll see if that makes
> any difference.
Well, the problem is solved, but I don't think my environment had anything to
do with it. Instead, I saw that QTextStream usage was responsible for the
crash, and then I stumbled across this discussion:
https://github.com/mxe/mxe/issues/285
Since setCodec was not being called on QTextStream instances in my code, a
null codec was apparently being used in the Qt code with rather predictable
consequences. So I've added explicit setCodec calls throughout the code to
remove this possibility.
A test deploying on Windows 7 seems to indicate that the problem is indeed
solved.
Paul