--- ocaml-4.02.2/byterun/caml/signals_machdep.h.orig 2015-07-27 12:09:29.167423285 +0100 +++ ocaml-4.02.2/byterun/caml/signals_machdep.h 2015-07-27 12:10:22.386962478 +0100 @@ -16,7 +16,7 @@ #ifndef CAML_SIGNALS_MACHDEP_H #define CAML_SIGNALS_MACHDEP_H -#if defined(__GNUC__) && defined(__i386__) +#if defined(__GNUC__) && (defined(__i386__) || (defined(__x86_64__) && !defined(__LP64__))) #define Read_and_clear(dst,src) \ asm("xorl %0, %0; xchgl %0, %1" \ --- ocaml-4.02.2/otherlibs/num/bng.c~ 2015-04-12 10:03:39.000000000 +0100 +++ ocaml-4.02.2/otherlibs/num/bng.c 2015-07-27 12:18:57.712500679 +0100 @@ -17,7 +17,7 @@ #include "caml/config.h" #if defined(__GNUC__) && BNG_ASM_LEVEL > 0 -#if defined(BNG_ARCH_ia32) +#if defined(BNG_ARCH_ia32) || (defined(BNG_ARCH_amd64) && !defined(__LP64__)) #include "bng_ia32.c" #elif defined(BNG_ARCH_amd64) #include "bng_amd64.c"