-mms-bitfields revisited

Bernhard Reiter bernhard at intevation.de
Wed Jun 17 17:19:08 CEST 2009


Am Dienstag, 16. Juni 2009 14:08:57 schrieb Ralf Habacker:
> > It basically tell
> > gcc to be msvc compatible, for C libs, if I understand correctly, and
> > should cause no harm, provided everything is built with it consistently.

Or rephrased differently, using the machine flag "-m" set to "ms-bitfields"
the resulting binary will be compatible with the ABI of windows (aka dlls from 
Microsoft-Compilers).

http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/Type-Attributes.html#i386-Type-Attributes :

    Currently -m[no-]ms-bitfields is provided for the Microsoft Windows X86 
    compilers to match the native Microsoft compiler.

(Credits go to Werner and Marcus for explaining the issue to me.)

> > Let me know how I should proceed with this. This then leaves the question
> > of Qt. Nokians, any opinion on that? Is it maybe even already in there,
> > the flag? 
>
> According to http://code.google.com/p/cocotron/issues/detail?id=137
> adding this option will result into an binary incompatible change, which
> means *all* packages affected by this BIC should be rebuild at the same
> time.

Yes.

The problem mainly will create problems with using C libraries using somehow 
packed bitfields in structs or so and of course both sides using a different 
ABI.

It might be that current builds of KDE (without the right ABI) on windows 
interfacing with DLLs in the microsoft compiler layout will have somehow 
hidden defects because of this issue already.

-- 
Managing Director - Owner: www.intevation.net       (Free Software Company)
Germany Coordinator: fsfeurope.org. Coordinator: www.Kolab-Konsortium.com.
Intevation GmbH, Osnabrück, DE; Amtsgericht Osnabrück, HRB 18998
Geschäftsführer Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/kde-windows/attachments/20090617/0c075952/attachment.sig 


More information about the Kde-windows mailing list