Simon King wrote: > Dear Tim, dear gcc team, > > Recall that when building gcc 4.2.1, i got this error: > In file included from /usr/include/features.h:346, > from /usr/include/stdio.h:28, > from /usr/local/gcc-4.2.1/gcc/tsystem.h:90, > from /usr/local/gcc-4.2.1/gcc/crtstuff.c:68: > /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: Datei oder > Verzeichnis nicht gefunden > > From the behaviour of stubs.h, we see that __WORDSIZE actually is 32 > (which is wrong). Hence, apparently __x86_64__ was not defined. > > Now, i work on x86_64. Why isn't __x86_64__ defined, and where should it > usually be defined? This define should be set by your bootstrap compiler. On a 64-bit OS, gcc should use -m64 and set the x86-64 options by default. If you are trying to build 64-bit gcc on a 32-bit OS installation, you will need to follow the cross-compiler build instructions, but you would still require a 64-bit OS to make use of the newly built compiler.