large G++ locale overhead in g++ 4.9.2

Peter Dufault dufault at
Mon Jun 29 14:02:28 UTC 2015

> On Jun 29, 2015, at 09:28 , Sebastian Huber <sebastian.huber at> wrote:
>> By only including the RTEMS shell commands I use I reduced the size to 1839664 (latest RTEMS) vs 1624684 (September RTEMS), about a 13% increase, but at least it fits in FLASH.
>> The overhead appears to be mostly all the locale “stuff” in g++ 4.9.2 vs g++ 4.8.2.  I did some googling but don’t see how to reduce this, does anyone know of a way?  I really don’t need currency customization.
> What pulls in this locale stuff? Maybe
> CFLAGS += -ffunction-sections -fdata-sections
> LDFLAGS = -Wl,--gc-sections
> helps?

I don’t know what pulls in the locale stuff or how to disable it.

Your suggested flags makes a huge difference, it’s now 1424272 bytes in size, at 12% decrease from September and a 22% decrease from building the application with gcc 4.9.2 without the flags. I don’t see as much locale stuff in there.  I only recompiled the user application code and not RTEMS itself.

Even better the application still runs.

How can these options change what gets linked in?

Peter Dufault
HD Associates, Inc.      Software and System Engineering

More information about the devel mailing list