[Releasing] MinGW 4.8.1 upgrade for 5.2 - InterlockedCompareExchange conflict

Koehne Kai Kai.Koehne at digia.com
Tue Sep 3 14:25:14 CEST 2013


I'm investigating an update of the Mingw-builds version we use in the binary packages for 5.2, but have hit some issues .... 

It looks like one cannot run the current Qt 5.1.0 , Qt 5.1.1 MinGW that was built with mingw-builds 4.8.0 rev2 on top of a newer gcc 4.8.1 runtime. The reason is an 'InterlockedCompareExchange at 12' symbol that apparently was accidentally part of the toolchain [1], and which at least some ICU / Qt libs now require. 

Recompiling 5.1.0 and 5.1.1 packages with gcc 4.8.1 isn't an option, since a stock 5.1.1 already requires patches to work with the latest MiNGW-w64 headers. But what we can do is shipping a MinGW 4.8.1 package along the 4.7.4, 4.8.0 toolchains. The biggest problem (apart from the additional download in the online installer) with this is that the package name, toolchain name in Creator, file folders etc do contain any patch version number so far ... so it would be 'MinGW 4.8.1' along 'MinGW 4.8'  and 'MinGW 4.7'.

Thoughts on this? I don't have any killer  bug that would force us to upgrade until now ... From looking at http://gcc.gnu.org/develop.html I'd estimate that a gcc 4.9.0 will be released around March 2014, which might be just in time for Qt 5.3 then, so an option is indeed to stay with the current mingw-builds 4.8.0 for 5.2.



PS: Took the liberty to CC this to mingwbuilds mailing list.

[1]: Discussion about the symbol on mingw-w64 mailing list: http://comments.gmane.org/gmane.comp.gnu.mingw.w64.general/7411

   Kai Köhne, Senior Software Engineer - Digia, Qt
   Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
   Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
   Sitz der Gesellschaft: Berlin. USt-IdNr: DE 286 306 868
   Registergericht: Amtsgericht Charlottenburg, HRB 144331 B

More information about the Releasing mailing list