getting memory errors when natively bulding native gnu gcc 3. 3.2 compiler on PQ2FADS-VR with 32 MB DRAM memory

Kai Ruottu karuottu@mbnet.fi
Thu Oct 21 09:18:00 GMT 2004


Povolotsky, Alexander wrote:

> I (may be being naive, but at least with good intensions ;-) )
> would like to consider this as a problem (bug ?) - in two areas:
> 
> 1) Gnu gcc area:
> 
>    a) At best - Gnu ggc folks need to attempt to overall improve (minimize)
> memory consumption
>       for 3.3.x and 3.4.x gcc builds
>    b) Less desirable - Gnu ggc folks need to improve configuration options
> and/or decrease memory consumption
>       in  "partial" (for example language-wise) builds
>    c) Also (IMHO) Gnu gcc folks need to provide option for doing "slower" (
> more iterative ?) gcc build process
>       but with guaranteed low memory consumption
>    d) At the very least - Gnu gcc folks need to clearly document current
> memory consumption reqs for
>       3.2.x, 3.3.x, 3.4.x .

  After trying to investigate this 'bug' more :

  On a 64 Mbyte RedHat 7 system, compiling the gcc-3.3.3 and 3.3.5 sources with
my self-built gcc-3.2.3 and with '-Os' seemed to need max. 36 Mbytes in both
cases with the problematic 'insn-recog.c' case... Seeing which module was under
construction in that period, compiling this one module was found to be the
'biggest' problem...

  Compiling gcc-3.3.3 with itself on Redhat 7 then raised the need to 41 Mbytes,
but not to the 115 Mbytes seen on Redhat 8. The gcc-3.3 on RH7 was made with and
against glibc-2.2.5 but the gcc-3.3 on RH 8 was made with the 'RH update RPMS'
glibc-2.3.2... No newer updates seen, maybe I must be brave and test installing
a new native glibc-2.3.3.

  So my understanding is that this is related to using glibc-2.3.2 as the runtime
shared libraries, reserving/freeing memory failing there somehow. But still
these 36 - 41 Mbytes needs can be too much for a 32 Mbyte build system.

  The 'uClibc' shows that people could need smaller libraries etc. in embedded
Linuces... Why kernel-2.6.x, glibc-2.3.x, gcc-3.3 or gcc-3.4 are absolutely
needed there despite of the "Law of More", is totally unclear for me... Could
someone explain this to me?








------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list