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

Reply via email to