gcc -m32 and int64_t

David Xu davidxu at freebsd.org
Wed Jun 3 03:50:58 UTC 2009


It seems there is a problem in /sys/am64/_types.h when cross-compiling a
32-bit code in amd64 machine, the following code prints 4 instead of 8:

/* int64_size.c */

#include <sys/types.h>
#include <stdio.h>

int main()
{
     printf("%d\n", sizeof(int64_t));
     return (0);
}


$cc -m32 -o int64_size -B /usr/lib32/ int64_size.c
$./int64_size
4


Regards,
David Xu


More information about the freebsd-amd64 mailing list