https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577
--- Comment #115 from Peter Bisroev <peter.bisroev at groundlabs dot com> --- Hi Dave, (In reply to dave.anglin from comment #114) > I would try to build 4.7.4 directly with aCC or gcc 3.3.6 (i.e., skip > intermediates). When I tried building 4.7.4 with aCC, 3-stage bootstrap completes successfully. It is only when I then use the newly built 4.7.4 to bootstrap itself again, that is when I run into trouble as cc1 blows up in size when compiled with 4.7.4. What I am not understanding though, is how come we can build everything properly, all the stages when bootstraping with aCC but not with 4.7.4 itself? I guess I can keep the binaries generated and see what is different. Will do that soon. I will also try using working 3.3.6 to try and build 4.7.4 as you have suggested. Will let you know how that goes as well. > Maybe just build C in your first attempt at 4.7.4. If I recall this thread > correctly, the issue > with C++ relates to linkonce and one-only support for C++. So far, whenever I have tried compiling just the C compiler with 4.7.4 I have used the --enable-languages='c' configure flag. However it always ends up building C++ as well. When I run "grep ^language= */config-lang.in" as mentioned here (https://gcc.gnu.org/install/configure.html), I just get 'c++' option and not 'c'. Maybe the ability to build C only has been deprecated? Or maybe I am doing something wrong? > There are patches in this thread that fix some problems but not all... Would you recommend I apply some of those patches or continue working on a clean source tree for now? > On my parisc build system, I have maxtsize set at 134217728. Maybe you > should double > your current value but that should be enough. This size command should show > the actually > text size of cc1 and cc1plus. A log of the size of cc1 is debug info. I will definitely try to use the "size" command in the future for that and adjust maxtsize accordingly. I have definitely seen the binaries three times your limit though. I will double check everything again though. Thanks for the pointer! > 4.1.2 is probably broken and has miscompiled 4.2.0. If you hit the same > issue building 4.7.4, > then it's worthwhile trying to debug the stack overflow. I have actually tried that as well. 4.1.2 cab build 4.7.4 perfectly fine, 3 stage bootstrap completes successfully. It is then that 4.7.4 fails to bootstrap itself due to maxtsize issue again. It is actually exactly the same behavior as with aCC above. I will actually repeat the test and see what are the sizes of the binaries in both cases and will let you know. By the way, unless I am mistaken, should the output of stage3 be in theory the same irrespective of whether host compiler to build stage1 was 3.3.6 or aCC? > Getting this going is not likely to be easy... Does not look like it but already, thank you for your help so far! Cheers, --peter