Problems with building gcc 4.2.1

Simon King king@mathematik.uni-jena.de
Tue Sep 25 09:06:00 GMT 2007


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

So, in the first place it includes gnu/stubs.h

gnu/stubs.h includes bits/wordsize.h, and if __WORDSIZE==32 then it 
includes gnu/stubs-32.h (which apparently is responsible for the above 
error!)

But why is __WORDSIZE==32?? Well, bits/wordsize.h checks if __x86_64__ is 
defined. If it is, it defines __WORDSIZE to 64 and __WORDSIZE_COMPAT32 to 
1. Otherwise, it defines __WORDSIZE to 32.

>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?

Yours
	Simon




More information about the Gcc-help mailing list