On Tue, 2006-08-22 at 20:36 +0200, Adrian Frith wrote: > On Tue, 2006-08-22 at 16:12 +0200, Alan Mckinnon wrote: > > modify CFLAGS in /etc/make.conf > > emerge -e system > > emerge -s world > > > > This will rebuild your toolchain (gcc, glibc and friends) to use -O2 > > then rebuild the entire system, including the toolchain again, with -O2. > > Your current compiler was built with -O3, and you want to rebuild the > > system using a compiler compiled as -O2, hence the 2 step process. > > Correct me if I am wrong, but doesn't the gcc ebuild in fact use the > "make bootstrap" method of compiling gcc? - that is: > 1. compile with installed compiler -> stage1 > 2. compile with stage1 compiler -> stage2 > 3. compile with stage2 compiler -> stage3 > 4. compare stage2 and stage3 and install stage3 if they are the same > > If I am right, doesn't it mean that the whole "emerge -e system" step is > pointless? Couldn't one just do "emerge -u gcc" and then "emerge -e > world"? Or am I being stupid?
I believe the gcc ebuild does do a bootstrap compile, which does imply that emerge -e system is redundant. But, we had a huge long rambling thread on this point recently which I'd rather not rehash again :-) and IIRC the general consensus was that 'emerge -e system ; emerge -e world' was the way to go, for reasons broader than just gcc. I forget the details, maybe we should both check the archives. What I do know is that 'emerge -e system ' is relatively quick compared to 'emerge -e world', so the extra step didn't hurt much when I recently upgraded gcc, it was something like 2 hours for the one, and 36 for the other (!) alan -- gentoo-user@gentoo.org mailing list