On Thu, Oct 05, 2006 at 05:49:49PM +0100, Matthew Burgess wrote: > Hi folks, > > I'm trying to compile kdebase-3.5.4 against the headers installed via > 'make headers_install' from linux-2.6.18. Unfortunately, I get this error: > > error: '__s64' does not name a type > /usr/include/linux/joystick.h:132: error: '__s64' does not name a type > > Now, obviously that's not good, but I don't think it's kdebase's fault > (linux/joystick.h is installed afterall, so they're using a permitted API). > > The problem seems to be that linux/joystick.h is #including asm/types.h > which only typedefs __s64 if __GNUC__ is defined and __STRICT_ANSI__ > isn't defined: > > #if defined(__GNUC__) && !defined(__STRICT_ANSI__) > typedef __signed__ long long __s64; > typedef unsigned long long __u64; > #endif > > I can only presume, because of the error above, that those conditions > aren't being met, but a cursory glance of the logfile doesn't appear to > help me ascertain which one of them is triggering the problem above. > > Any ideas, folks? > > Matt. > Matt,
as a starter, something crude like this for a separate program, e.g. types.c. #include <stdlib.h> #include <stdio.h> #include <linux/joystick.h> main() { #if defined(__GNUC__) printf("__GNUC__ is defined\n"); #else printf("__GNUC__ is NOT defined\n"); #endif #if defined(__STRICT_ANSI__) printf("__STRICT_ANSI__ is defined\n"); #else printf("__STRICT_ANSI__ is NOT defined\n"); #endif } If I compile and run this on pure64 using the CLFS headers, I get [EMAIL PROTECTED] ~ $./types __GNUC__ is defined __STRICT_ANSI__ is NOT defined Ken -- das eine Mal als Tragödie, das andere Mal als Farce -- http://linuxfromscratch.org/mailman/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page