On Thu, Jun 08, 2006 at 07:00:22AM -0700, Bob Young wrote: > > > > From: Hans-Werner Hilse [mailto:[EMAIL PROTECTED] > > Sent: Thursday, June 08, 2006 6:32 AM > > To: gentoo-user@lists.gentoo.org > > Subject: Re: [gentoo-user] gcc-4.1.1 > > > > Try to understand what you are replying to. GCC's internal build logic > > does the staging. That's got nothing to do with what your system calls > > when you issue "gcc", and only at that point the slotting of GCC > > versions comes into play. > > > Show me some documentation for this "staging" you refer to.
He did! In the INSTALL/build.html file in the gcc sources. > When you "emerge gcc" it is built with the current compiler, if the > current compiler is gcc 3.4.6, and you emerge gcc 4.1.1, that means > that while gcc 4.1.1 is being emerged it is built with gcc > 3.4.6. gcc 4.1.1 can't be built with 4.1.1 because it hasn't been > emerged yet, and as far as the system knows it doesn't actually > exist yet. Yes. The *first* time that gcc 4.1.1 is built. But then the gcc build process builds it a *second* time, using the gcc 4.1.1 it's just built. And for good measure, it goes on to build it a *third* time with the second version it produced. This is all done by the gcc build process (it's in the Makefile), which is what emerge runs. > Can you clearly and concisely explain to me how something that is in > the process of being emerged can be used to emerge itself? Doesn't > make sense. You're obviously right that you have to *compile* a new gcc at least twice. But this is done automatically by the gcc build process, so there's no need to build (or emerge) gcc twice. This has nothing to do with gentoo. Downloading the gcc sources manually and running ./configure, make, make install (or whatever the exact gcc build process is) would work too: you'd only need to do it once. Toby -- PhD Student Quantum Information Theory group Max Planck Institute for Quantum Optics Garching, Germany email: [EMAIL PROTECTED] web: www.dr-qubit.org -- gentoo-user@gentoo.org mailing list