1 |
It has been many moons since I got into compiling a compiler but here's |
2 |
how it basically works: |
3 |
|
4 |
|
5 |
STAGE 1: |
6 |
|
7 |
Compile the new compiler with whatever broken crap compiler is already |
8 |
installed/hacked together/manually entered by punch cards/etc... |
9 |
|
10 |
STAGE 2: |
11 |
|
12 |
Compile the new compiler with whatever came out of stage 1. |
13 |
|
14 |
STAGE 3: |
15 |
|
16 |
As a sanity check, compile the new compiler a third time with whatever |
17 |
came out of stage 2 |
18 |
|
19 |
Because stage 1 should have produced a fully updated compiler, it's |
20 |
output (stage 2) should be identical to what that compiler in turn |
21 |
produced (Stage 3). |
22 |
|
23 |
This is where it's failing for me. |
24 |
|
25 |
|
26 |
Stanislav Nikolov wrote: |
27 |
> I think they should be compiled with the same version of gcc, |
28 |
> shouldn't they? |
29 |
> |
30 |
> On 12/24/2015 05:18 PM, Alan Grimes wrote: |
31 |
> > Hey, thanks for putting out gcc 5.3... |
32 |
> |
33 |
> > Unfortunately, it fails to bootstrap on my machine. I am getting |
34 |
> > differences between the stage 2 and stage 3 compilers and it's |
35 |
> dying... =( |
36 |
> |
37 |
> > make[2]: Entering directory |
38 |
> > '/var/tmp/portage/sys-devel/gcc-5.3.0/work/build' |
39 |
> > make[3]: Entering directory |
40 |
> > '/var/tmp/portage/sys-devel/gcc-5.3.0/work/build' |
41 |
> > rm -f stage_current |
42 |
> > make[3]: Leaving directory |
43 |
> '/var/tmp/portage/sys-devel/gcc-5.3.0/work/build' |
44 |
> > Comparing stages 2 and 3 |
45 |
> > warning: gcc/cc1plus-checksum.o differs |
46 |
> > warning: gcc/cc1-checksum.o differs |
47 |
> > Bootstrap comparison failure! |
48 |
> > gcc/tree-ssa-threadedge.o differs |
49 |
> > gcc/tsan.o differs |
50 |
> > gcc/print-tree.o differs |
51 |
> > gcc/df-core.o differs |
52 |
> > gcc/omega.o differs |
53 |
> > gcc/dwarf2cfi.o differs |
54 |
> > gcc/lto-cgraph.o differs |
55 |
> > gcc/sanopt.o differs |
56 |
> > gcc/sched-vis.o differs |
57 |
> > gcc/tree-ssa-tail-merge.o differs |
58 |
> > gcc/godump.o differs |
59 |
> > gcc/graph.o differs |
60 |
> > gcc/tree-vect-loop-manip.o differs |
61 |
> > gcc/cse.o differs |
62 |
> > gcc/omp-low.o differs |
63 |
> |
64 |
> > [many lines omitted] |
65 |
> |
66 |
> > libiberty/xmalloc.o differs |
67 |
> > libiberty/simple-object-elf.o differs |
68 |
> > libiberty/spaces.o differs |
69 |
> > libiberty/pex-unix.o differs |
70 |
> > libiberty/simple-object-coff.o differs |
71 |
> > libiberty/crc32.o differs |
72 |
> > libiberty/physmem.o differs |
73 |
> > libiberty/make-relative-prefix.o differs |
74 |
> > libiberty/argv.o differs |
75 |
> > libiberty/pex-common.o differs |
76 |
> > libiberty/simple-object.o differs |
77 |
> > libiberty/strerror.o differs |
78 |
> > libiberty/simple-object-mach-o.o differs |
79 |
> > libiberty/sha1.o differs |
80 |
> > libiberty/cp-demint.o differs |
81 |
> > libiberty/dyn-string.o differs |
82 |
> > libiberty/make-temp-file.o differs |
83 |
> > libiberty/cplus-dem.o differs |
84 |
> > libiberty/sort.o differs |
85 |
> > libiberty/splay-tree.o differs |
86 |
> > libiberty/xstrndup.o differs |
87 |
> > lto-plugin/.libs/lto-plugin.o differs |
88 |
> > Makefile:19638: recipe for target 'compare' failed |
89 |
> > make[2]: *** [compare] Error 1 |
90 |
> > make[2]: Leaving directory |
91 |
> '/var/tmp/portage/sys-devel/gcc-5.3.0/work/build' |
92 |
> > Makefile:19617: recipe for target 'stage3-bubble' failed |
93 |
> > make[1]: *** [stage3-bubble] Error 2 |
94 |
> > make[1]: Leaving directory |
95 |
> '/var/tmp/portage/sys-devel/gcc-5.3.0/work/build' |
96 |
> > Makefile:19691: recipe for target 'bootstrap-lean' failed |
97 |
> > make: *** [bootstrap-lean] Error 2 |
98 |
> > * ERROR: sys-devel/gcc-5.3.0::gentoo failed (compile phase): |
99 |
> > * emake failed |
100 |
> |
101 |
> |
102 |
> |
103 |
> > |
104 |
|
105 |
-- |
106 |
IQ is a measure of how stupid you feel. |
107 |
|
108 |
Powers are not rights. |