1 |
On Wednesday 25 January 2006 18:27, Chris Gianelloni wrote: |
2 |
|
3 |
> You didn't follow the Handbook. Your comments about compiling GCC 3 |
4 |
> times are completely unbased, since you ran not only an "emerge -e |
5 |
> system" (which is recommended) but then immediately, and needlessly, |
6 |
> followed it up with an "emerge -e world" which pretty much blew any |
7 |
> results that you had gained out of the water. |
8 |
|
9 |
No, I didn't follow the handbook because I knew a gcc migration was |
10 |
involved. http://www.gentoo.org/doc/en/gcc-upgrading.xml, Code Listing |
11 |
3.6, suggests to emerge -e system emerge -e world as the "safe" route. |
12 |
|
13 |
The goal was to get the current gentoo toolchain from the current portage |
14 |
snapshot and latest available stage3 tarball, using the stage3 installation |
15 |
method. If I had followed the handbook, I would have ended up with gcc |
16 |
3.3.6 and gcc 3.4.4 installed, but everything built with 3.3.6. So to be |
17 |
completely accurate, if I had gone by the handbook and not the gcc |
18 |
migration guide, the build times for the stage3 method would have taken 4x |
19 |
longer than a stage1 instead of 2x. |
20 |
|
21 |
My entire point was the the mind blowing waste of time required to obtain a |
22 |
current gentoo install using the stage3 installation method. Unbased? I |
23 |
think not. |
24 |
|
25 |
> There are no "facts" in what you posted. In fact, it looks as if your |
26 |
> designs were tailored to find a way in which you could get a stage3 to |
27 |
> be slower. If you're willing, I will work on the scripts to produce |
28 |
> *accurate* results for stages 1 and 3. Essentially, your data was |
29 |
> worthless since you didn't follow any prescribed way of using a stage3 |
30 |
> tarball, nor did you anywhere cite where you came up with your |
31 |
> procedures. |
32 |
|
33 |
I didn't tailor anything, I followed the exact same process anyone would |
34 |
need to follow to download a stage3, install the current portage snapshot, |
35 |
and get their system compiled with the default stable gcc (3.4.4). |
36 |
|
37 |
> I just did. You can stick with your "facts" all that you want, but |
38 |
> they're incorrect. |
39 |
|
40 |
> Here's a simple pseudo-formula to determine just how off you were: |
41 |
> |
42 |
> (Yes, this is simplified slightly) |
43 |
> |
44 |
> stage1 == tarball + toolchain (bootstrap) + system |
45 |
> stage3 == tarball + system + depclean |
46 |
|
47 |
Try it. Take my script and make it closer to the reality you describe. As |
48 |
long as the end result is the same - a system compiled against the current |
49 |
stable gcc, using the current snapshot. |
50 |
|
51 |
Sure, at some point in the future the "current" official stages will contain |
52 |
the "current" toolchain, and building from a stage3 will be quicker, much |
53 |
quicker. But gentoo is a moving target, it does not stay static. The |
54 |
stage1 method produces consistent results and it does not really matter |
55 |
what USE flags you throw at it, it works without having to jump through |
56 |
undocumented hoops. That is until someone throws in circular dependencies, |
57 |
which are fairly easy to work around. |
58 |
|
59 |
> I'm sorry, but I cannot possibly believe that compiling the toolchain + |
60 |
> the system target takes less time than only compiling system and |
61 |
> summarily removing unused packages. This, by the way, would have |
62 |
> avoided the issues that you were having with things like "ls" being |
63 |
> broken. |
64 |
|
65 |
It takes less time because the first pass of the bootstrap is a bootstrap |
66 |
pass. With a corrected bootstrap.sh, just using userlocales (something |
67 |
nearly impossible to do on the first pass with the currently broken |
68 |
bootstrap.sh) cuts the build time almost a forth. The first gcc build does |
69 |
not build g++ either, further cutting out unneeded double building. You |
70 |
also don't waste your time upgrading from gcc 3.3.5, to gcc 3.3.6, to |
71 |
3.4.4. I didn't make that shit up. |