Hi all (especially Ozkan), I tried to cross-compile gmp 4.3.2 in cygwin, but failed, the log is here:
http://sprunge.us/hSOY I believe the relevant bit is near the end, copied below. Invocation was: /home/Mari/ecl-10.3.1-x64/src/gmp/configure --disable-shared --prefix=/home/Mari/ecl-10.3.1-x64/build --infodir=/home/Mari/ecl-10.3.1-x64/build/doc --includedir=/home/Mari/ecl-10.3.1-x64/build/ecl --with-pic --libdir=/home/Mari/ecl-10.3.1-x64/build --build=i686-pc-cygwin --host=x86_64-w64-mingw32 CFLAGS=-g -O2 LDFLAGS= CPPFLAGS= CC=x86_64-w64-mingw32-gcc ABI=64 first goal is to build ecl (a common lisp), in the end I'd like to build fricas (a computer algebra system). I realise that all this may be in vain, because currently fricas needs cygwin for the connection to the X-server, so I don't know whether a 64 bit version could be run from within cygwin. But I wanted to give it a try. Thanks, Martin configure:32787: x86_64-w64-mingw32-gcc -std=gnu99 -c -g -O2 conftest.c >&5 conftest.c: In function main: conftest.c:227:12: error: size of array test_array is negative configure:32793: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "GNU MP" | #define PACKAGE_TARNAME "gmp" | #define PACKAGE_VERSION "4.3.2" | #define PACKAGE_STRING "GNU MP 4.3.2" | #define PACKAGE_BUGREPORT "[email protected]" | #define PACKAGE "gmp" | #define VERSION "4.3.2" | #define WANT_FFT 1 | #define HAVE_HOST_CPU_x86_64 1 | #define HAVE_SPEED_CYCLECOUNTER 2 | #define HAVE_CALLING_CONVENTIONS 1 | #define PROTOTYPES 1 | #define __PROTOTYPES 1 | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | #define HAVE_STRING_H 1 | #define HAVE_DLFCN_H 1 | #define STDC_HEADERS 1 | #define TIME_WITH_SYS_TIME 1 | #define HAVE_FCNTL_H 1 | #define HAVE_FLOAT_H 1 | #define HAVE_LOCALE_H 1 | #define HAVE_SYS_PARAM_H 1 | #define HAVE_SYS_TIME_H 1 | #define HAVE_DECL_FGETC 1 | #define HAVE_DECL_FSCANF 1 | #define HAVE_DECL_OPTARG 1 | #define HAVE_DECL_UNGETC 1 | #define HAVE_DECL_VFPRINTF 1 | #define HAVE_DECL_SYS_ERRLIST 0 | #define HAVE_DECL_SYS_NERR 0 | #define RETSIGTYPE void | #define HAVE_INTMAX_T 1 | #define HAVE_LONG_DOUBLE 1 | #define HAVE_LONG_LONG 1 | #define HAVE_PTRDIFF_T 1 | #define HAVE_UINT_LEAST32_T 1 | #define HAVE_STRINGIZE 1 | #define HAVE_STDARG 1 | #define HAVE_ATTRIBUTE_CONST 1 | #define HAVE_ATTRIBUTE_MALLOC 1 | #define HAVE_ATTRIBUTE_MODE 1 | #define HAVE_ATTRIBUTE_NORETURN 1 | #define HAVE_ALLOCA 1 | #define WANT_TMP_ALLOCA 1 | #define HAVE_LIMB_LITTLE_ENDIAN 1 | #define HAVE_DOUBLE_IEEE_LITTLE_ENDIAN 1 | #define HAVE_ALARM 1 | #define HAVE_CLOCK 1 | #define HAVE_GETPAGESIZE 1 | #define HAVE_GETTIMEOFDAY 1 | #define HAVE_LOCALECONV 1 | #define HAVE_MEMSET 1 | #define HAVE_MPROTECT 1 | #define HAVE_POPEN 1 | #define HAVE_RAISE 1 | #define HAVE_STRCHR 1 | #define HAVE_STRERROR 1 | #define HAVE_STRTOL 1 | #define HAVE_STRTOUL 1 | #define HAVE_VSNPRINTF 1 | #define HAVE_NATIVE_mpn_add_n 1 | #define HAVE_NATIVE_mpn_add_nc 1 | #define HAVE_NATIVE_mpn_sub_n 1 | #define HAVE_NATIVE_mpn_sub_nc 1 | #define HAVE_NATIVE_func_nc 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_add_n 1 | #define HAVE_NATIVE_mpn_add_nc 1 | #define HAVE_NATIVE_mpn_sub_n 1 | #define HAVE_NATIVE_mpn_sub_nc 1 | #define HAVE_NATIVE_func_nc 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_mul_1c 1 | #define HAVE_NATIVE_mpn_mul_1 1 | #define HAVE_NATIVE_mpn_addmul_1 1 | #define HAVE_NATIVE_mpn_submul_1 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_addmul_1 1 | #define HAVE_NATIVE_mpn_submul_1 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_lshift 1 | #define HAVE_NATIVE_mpn_rshift 1 | #define HAVE_NATIVE_mpn_divexact_1 1 | #define HAVE_NATIVE_mpn_preinv_divrem_1 1 | #define HAVE_NATIVE_mpn_divrem_1 1 | #define HAVE_NATIVE_mpn_divrem_2 1 | #define HAVE_NATIVE_mpn_mod_34lsub1 1 | #define HAVE_NATIVE_mpn_modexact_1_odd 1 | #define HAVE_NATIVE_mpn_modexact_1c_odd 1 | #define HAVE_NATIVE_mpn_mul_basecase 1 | #define HAVE_NATIVE_mpn_sqr_basecase 1 | #define HAVE_NATIVE_mpn_popcount 1 | #define HAVE_NATIVE_mpn_hamdist 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_popcount 1 | #define HAVE_NATIVE_mpn_hamdist 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_bdiv_dbm1c 1 | #define HAVE_NATIVE_mpn_redc_1 1 | #define HAVE_NATIVE_mpn_copyi 1 | #define HAVE_NATIVE_mpn_copyd 1 | #define HAVE_NATIVE_mpn_com_n 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_and_n 1 | #define HAVE_NATIVE_mpn_andn_n 1 | #define HAVE_NATIVE_mpn_nand_n 1 | #define HAVE_NATIVE_mpn_ior_n 1 | #define HAVE_NATIVE_mpn_iorn_n 1 | #define HAVE_NATIVE_mpn_nior_n 1 | #define HAVE_NATIVE_mpn_xor_n 1 | #define HAVE_NATIVE_mpn_xnor_n 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_func 1 | #define HAVE_NATIVE_mpn_invert_limb 1 | #define HAVE_NATIVE_mpn_mul_2 1 | #define HAVE_NATIVE_mpn_addmul_2 1 | #define HAVE_NATIVE_mpn_addlsh1_n 1 | #define HAVE_NATIVE_mpn_sublsh1_n 1 | #define HAVE_NATIVE_mpn_rsh1add_n 1 | #define HAVE_NATIVE_mpn_rsh1sub_n 1 | #define HAVE_NATIVE_mpn_addaddmul_1msb0 1 | #define LSYM_PREFIX "L" | #define GMP_MPARAM_H_SUGGEST "/home/Mari/ecl-10.3.1-x64/src/gmp/mpn/x86_64/gmp-mparam.h" | #define SIZEOF_UNSIGNED_SHORT 2 | #define SIZEOF_UNSIGNED 4 | #define SIZEOF_UNSIGNED_LONG 4 | /* end confdefs.h. */ | #define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ | #define GMP_NAIL_BITS 0 | #define __GMP_BITS_PER_MP_LIMB 123 /* dummy for GMP_NUMB_BITS etc */ | #define GMP_LIMB_BITS 123 | /* #undef _LONG_LONG_LIMB */ | #include "/home/Mari/ecl-10.3.1-x64/src/gmp/gmp-h.in" | | | typedef mp_limb_t ac__type_sizeof_; | int | main () | { | static int test_array [1 - 2 * !(((long int) (sizeof | (ac__type_sizeof_))) <= 3)]; | test_array [0] = 0 | | ; | return 0; | } configure:32787: x86_64-w64-mingw32-gcc -std=gnu99 -c -g -O2 conftest.c >&5 configure:32793: $? = 0 configure:32963: x86_64-w64-mingw32-gcc -std=gnu99 -c -g -O2 conftest.c >&5 configure:32969: $? = 0 configure:32963: x86_64-w64-mingw32-gcc -std=gnu99 -c -g -O2 conftest.c >&5 configure:32969: $? = 0 configure:33084: result: 4 configure:33118: error: Oops, mp_limb_t is 32 bits, but the assembler code in this configuration expects 64 bits. You appear to have set $CFLAGS, perhaps you also need to tell GMP the intended ABI, see "ABI and ISA" in the manual. ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
