1 |
On 8/23/06, Alan Mckinnon <alan@××××××××××××××××.za> wrote: |
2 |
> Incidentally, gcc cannot use itself to compile itself - that's |
3 |
> nonsensical and a classic bootstrap problem. It uses a binary (which |
4 |
> happens to be a gcc) to compile the source code for gcc which produces |
5 |
> another binary. That binary then compiles the same source for gcc to |
6 |
> produce yet another binary, etc, etc. For stage 1 to work at all, there |
7 |
> has to be a compiler available to compile a compiler, and that first |
8 |
> compiler that *must* be available is probably the compiler that the rest |
9 |
> of the system uses, or the one on the LiveCD. So if you want to be |
10 |
> pedantic about building gcc, then please be correctly pedantic and |
11 |
> pedantically correct :-) |
12 |
|
13 |
Yes, I'm aware of how the bootstrapping process works. And if we want |
14 |
to be really pedantic about it, I'm still right, because the stage1 |
15 |
compiler that is built using the existing system compiler isn't called |
16 |
gcc...hmm, what is it...xcc, xgcc...something with an x in it anyway! |
17 |
So there is still no such thing as a "gcc built with the 'system |
18 |
compiler'" :-P |
19 |
|
20 |
More seriously, there is some really _stupid_ information about |
21 |
upgrading gcc on the gentoo-wiki and forums that seems to crop up here |
22 |
every few months, and it makes me really, really angry. Stupid crap |
23 |
like needing to "emerge -e system ; emerge -e system; emerge -e world; |
24 |
emerge -e world". Or needing to rebuild all binaries that link |
25 |
against a library whenever you rebuild the library. Or that you |
26 |
should merge gcc twice because you want a version of gcc that is built |
27 |
with the same version of gcc. All of which is utter nonsense. |
28 |
|
29 |
FYI, as Bo pointed out, I am _not_ saying that the emerge -e system |
30 |
step is redundant. I completely agree that "emerge -e system ; emerge |
31 |
-e world" is the safe route for upgrading gcc. I've been convinced of |
32 |
that by the previous threads on this topic. |
33 |
|
34 |
I was specifically replying to your comment: "Your current compiler |
35 |
was built with -O3, and you want to rebuild the system using a |
36 |
compiler compiled as -O2, hence the 2 step process." This is very |
37 |
much in the same line of thinking as those wiki pages and forum |
38 |
postings, and is wrong. Giving a newbie misinformation doesn't help |
39 |
them in any way. |
40 |
|
41 |
Oh, and BTW, on gentoo your optimization choices for gcc are -O, -O2 |
42 |
or nothing, because all other -O options are replaced with -O2 by |
43 |
toolchain.eclass. |
44 |
|
45 |
-Richard |
46 |
-- |
47 |
gentoo-user@g.o mailing list |