Gentoo Archives: gentoo-user

From: Richard Fish <bigfish@××××××××××.org>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] How to properly change CFLAGS ?
Date: Wed, 23 Aug 2006 19:11:02
Message-Id: 7573e9640608231206s623fb8bfx9d01695330a98dfb@mail.gmail.com
In Reply to: Re: [gentoo-user] How to properly change CFLAGS ? by Alan Mckinnon
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

Replies

Subject Author
Re: [gentoo-user] How to properly change CFLAGS ? Michael Hennebry <hennebry@×××××××××××××××××.edu>
Re: [gentoo-user] How to properly change CFLAGS ? Alan Mckinnon <alan@××××××××××××××××.za>