On Tuesday 15 July 2014 15:32:10 Milian Wolff wrote: > On Tuesday 27 May 2014 14:21:40 Thiago Macieira wrote: > > Hello > > > > This is your friendly note that all Qt modules that don't have C or > > assembly code are now using precompiled headers. I've tested this > > solution for a couple of months with GCC on Linux, Clang on Linux, Clang > > on Mac and the Intel compiler on Linux. > > > > As it turns out, I didn't test it in all modules with Visual Studio. I've > > just fixed one problem in QtScript and we have one left in qtlocation for > > QtLocation which makes no sense to me and I can't reproduce. > > > > This change does *not* enable precompiled headers by default. You still > > need to pass -pch to the configure script or to configure.exe in order to > > get them. It simply creates a precompiled header for the modules that > > didn't previously define one, unless explicitly overridden. > > > > When you should override: > > - when you have C, Objective C (not Objective C++) or assembly sources > > > > [done for all current modules] > > > > - when you need to do ugl^H^H^Hclever hacks with preprocessing that not > > > > even NO_PCH_SOURCES can help > > > > [no known instance] > > > > - when you have a better precompilation source than the default > > Hey Thiago, > > I have an issue with PCH's. I do not pass the -pch flag to configure, yet > still I regularly get build errors like the following, even on clean builds: > > In file included from <command-line>:0:0: > /usr/include/stdc-predef.h:59:1: error: one or more PCH files were found, > but they were invalid > #endif > ^ > /usr/include/stdc-predef.h:59:1: error: use -Winvalid-pch for more > information /usr/include/stdc-predef.h:59:1: fatal error: .pch/Qt5Quick: No > such file or directory > compilation terminated. > > The above is from QtDeclarative (dev branch), but I've also seen it in > QtBase and QtXMLPatterns, even while doing "make install" after a > successful make... It seems to be related to the number of jobs running, a > "make -j1" seems to work most of the time, yet a "make -j40" on a compile > cluster fails most of the time. It is pretty random, as it fails on > different files across rebuilds. I guess, if I'd run a make in a for loop > until if finished successfully it might work eventually but of course that > is not an option. > > I'm now trying to explicitly disable pch with -no-pch in QtBase and see > whether that makes a difference. Considering that I did not pass -pch > before, I wonder if it makes any difference... > > Did anyone ever see such an issue? What am I doing wrong? I'm building Qt5 > dev branches with gcc 4.9.0 over icecream on an up2date ArchLinux system.
FTR: Passing -no-pch explicitly seems to have helped indeed. Which is odd, no? Did the default change and are PCH now enabled by default? Bye -- Qt Developer Days 2014 - October 6 - 8 at BCC, Berlin Milian Wolff | [email protected] | Software Engineer KDAB (Deutschland) GmbH&Co KG, a KDAB Group company Tel. Germany +49-30-521325470, Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-independent software solutions _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
