Linux fastdebug build with debug info
volker.simonis at gmail.com
Mon May 25 04:07:21 PDT 2009
On 5/21/09, Erik Trimble <Erik.Trimble at sun.com> wrote:
> David Holmes - Sun Microsystems wrote:
> > Hiroshi Yamauchi said the following on 05/21/09 03:58:
> > > Nice talking to you after a while!
> > >
> > Likewise! Small world :)
> > > Is there a history about the Linux fastdebug build not having -g or
> > >
> > The history is that it's never been present and no-one seems to have
> noticed/complained! :) The Solaris fastdebug.make was modified way back in
> mid 2000.
> > I've filed: 6843665 in our internal bug system.
> > David
> I'm not 100% sure of the difference between our 'fastdebug' and out 'debug'
> builds, but one thing I do know: Linux_x64-debug isn't currently done due
> to _really_ excessive size on the symbol tables and associated output
> libary. IIRC, libjvm.so ends up being 1GB+ in size if we do a 'debug' build
> on linux 64-bit (this was particularly noticable on IA64 [itanium], but is
> also pronounced on x86_64).
I think these are really old numbers. Building the Java 6 server VM
with gcc 4.1 on Linux results in the following sizes of libjvm.so for
FASTDEBUG with -g -O3 : 141M
PRODUCT with -g -O3: 182M
FASTDEBUG with -g -O3 : 153M
PRODUCT with -g -O3: 192M
FASTDEBUG with -g -O3 : 224M
PRODUCT with -g -O3: 262M
I can only guess that the PRODUCT builds are bigger because of the
excessive inlineing with O3.
I also think the comments in the Makefile which recommend the usage of
"-gstabs" are very old and outdated by newer versions of gcc. Using
"-g" for a fastdebug build should be ok and the default from my point
> This may or may not have anything to do with the lack of -g being present
> in the makefiles. But, I thought you should know.
> Erik Trimble
> Java System Support
> Mailstop: usca22-123
> Phone: x17195
> Santa Clara, CA
> Timezone: US/Pacific (GMT-0800)
More information about the hotspot-dev