Debug size + PCH = Pb ! ?

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

 



Hello,

I have a big problem with the debug version of my software.
The release binary size is 12 Mo on Linux (gcc 3.4.3) and 16 Mo on Mac OS X ("Apple" gcc 3.3).
However the debug version is really huge :
- 250 Mo for Linux debug binary !
- more than 1300 Mo (1.3 Go) for Mac OS X binary !!!
The Mac OS X one is so big that ld fail to link with a memory allocation error message. I simply can't work :-( Of course, even with Linux version, many basic operations are very painful (recompile one file and relink)...
I suspect the precompiled header for doing so bad things.
And gcc behavior is definitly not the same on Mac or on Linux.
For an example, an empty file (just #include <pch.h>) generate an object file (foo.o) of 120 Ko in Linux.
For the same file, same project, the generate foo.o is 4 Ko in Mac OS X.
However, for a very small cpp file (50 lines of code), the Linux generate a 124 Ko object file and the Mac gcc generate a 650 Ko ! ? Our precompiled header is big because it contains qt.h (all Trolltech headers) and our private headers. But without the pch, it is REALLY painful to compile our software (with pch : 30 minutes ; without pch : 2 hours ! - with powerfull computer) (when I read the obj as a text file I find many thousand unused symbols inside) For info, the Windows binary files (VC++) are : 3 Mo (release) and 11 Mo (debug)

I am right when I suspect pch ?
Did anyone experienced the same problem ?
Does gcc4 solve it ? (the problem is qtMac doesn't compile with gcc4)
Any idea to solve that ?

Thank you for your help.

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux