mingw-cross-env-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-cross-env-list] [call for review UPDATED] Qt 4.7-beta1


From: Tony Theodore
Subject: Re: [Mingw-cross-env-list] [call for review UPDATED] Qt 4.7-beta1
Date: Fri, 21 May 2010 00:32:22 +1000

On 20 May 2010 08:48, Mark Brand <address@hidden> wrote:
>  I posted yet another update. Explanation below.
>
> http://www.xs4all.nl/~brandm/mingw-cross-env/qt-1-win32.patch
> http://www.xs4all.nl/~brandm/mingw-cross-env/qt.mk

[...]

>> One still open issue, albeit not pressing, is that when a 64 bit host is
>> detected, the *target* stage of the build fails later on:
>>
>> {standard input}: Assembler messages:
>> {standard input}:217: Error: suffix or operands invalid for `cmpxchg
>>
>> That's why we still use "-host-arch i386" which also works on 64 bit
>> systems.
>>
>
> I think I've solved this. The trick was to set the architecture of the
> target platform explicitly with "-arch windows" in addition to "-xplatform"
> when invoking configure. The configure script itself also needed a change
> for this to be respected on a MAC host.
>
> Now automatic detection of the host platform architecture works as expected
> and the build succeeds. For the first time we have 64 bit qmake, moc, etc.
>
> This is a case of a problem that seems easy to ignore with a workaround but
> actually is a symptom of a serious problem not solved by the workaround.
> Now, apparently for the first time, the target architecture is set
> correctly!

I'm still often confused by host/target and qt introduces a new
xplatform that I haven't fully understood. I think I can see the
intent of the patch, unfortunately it fails fairly early (log
attached). I fiddled with using -host-arch and CFG_HOST_ARCH; that
failed a lot later in the build, but was just a shot in the dark.

The same error occurs in the 4.6 patch as soon as the cross-build starts.

FWIW, there's no simple, cross-platform, way to determine the
`bitness` of an OSX system. Configure scripts are easily mislead by
tools such as uname, which is why we use gcc4.0 for mingw-cross-env.

Regards,

Tony

Attachment: qt
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]