On Tue, 29 Mar 2016, Erik Bray wrote:
I'm compiling GMP v6.0.0a
Why not 6.1.0, or better yet a recent snapshot from https://gmplib.org/download/snapshot/ ? The problem may have been fixed already, the first thing we need to know is if the issue still exists with the current sources.
in the MSYS2 environment with the MinGW-w64 gcc. Everything runs fine except the t-locale test in tests/cxx during make check. This is basically the same as the issue reported here: https://gmplib.org/list-archives/gmp-bugs/2011-June/002260.html The issues reported there are already worked around. In particular the incompatibility of tests/misc/t-locale.c is worked around by redefining main() to a no-op if __MINGW32__ is defined (which is true for MinGW-64 as well). I confirmed that a similar fix in tests/cxx/clocale.c did the trick by disabling the redefinitions of localeconv and nl_langinfo with an `#ifndef __MINGW32__`. The test itself is already designed to skip gracefully if the overrides fail. Configured with $ ./configure --enable-cxx ABI=64 $ gcc -v Using built-in specs. COLLECT_GCC=C:\msys64\mingw64\bin\gcc.exe COLLECT_LTO_WRAPPER=C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/5.3.0/lto-wrapper.exe Target: x86_64-w64-mingw32 Configured with: ../gcc-5.3.0/configure --prefix=/mingw64 --with-local-prefix=/mingw64/local --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --with-native-system-header-dir=/mingw64/x86_64-w64-mingw32/include --libexecdir=/mingw64/lib --with-gxx-include-dir=/mingw64/include/c++/5.3.0 --enable-bootstrap --with-arch=x86-64 --with-tune=generic --enable-languages=c,lto,c++,objc,obj-c++,fortran,ada --enable-shared --enable-static --enable-libatomic --enable-threads=posix --enable-graphite --enable-fully-dynamic-string --enable-libstdcxx-time=yes --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-version-specific-runtime-libs --disable-isl-version-check --enable-lto --enable-libgomp --disable-multilib --enable-checking=release --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-libiconv --with-system-zlib --with-gmp=/mingw64 --with-mpfr=/mingw64 --with-mpc=/mingw64 --with-isl=/mingw64 --with-pkgversion='Rev1, Built by MSYS2 project' --with-bugurl=http://sourceforge.net/projects/msys2 --with-gnu-as --with-gnu-ld Thread model: posix gcc version 5.3.0 (Rev1, Built by MSYS2 project) $ uname -a MINGW64_NT-6.1 PC-pret-47 2.4.1(0.294/5/3) 2016-02-03 10:57 x86_64 Msys $ ./config.guess coreihwl-pc-mingw64 $ ./configfsf.guess x86_64-pc-mingw64 When 'make check' compiles the tests/cxx/t-locale.cc test it produces the following error: ***** snip ***** gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../tests -Wall -g -O2 -g -O2 -c clocale.c clocale.c:47:1: warning: 'localeconv' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes] localeconv (void) ^ /bin/sh ../../libtool --tag=CXX --mode=link g++ -Wall -g -O2 -g -O2 -o t-locale.exe t-locale.o clocale.o -L../../.libs ../../tests/libtests.la ../../libgmpxx.la ../../libgmp.la -lm libtool: link: g++ -Wall -g -O2 -g -O2 -o t-locale.exe t-locale.o clocale.o -L../../.libs ../../tests/.libs/libtests.a ../../.libs/libgmpxx.a /home/embray/src/gmp/gmp-6.0.0a/.libs/libgmp.a ../../.libs/libgmp.a C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/5.3.0/../../../../x86_64-w64-mingw32/lib/../lib/libmsvcrt.a(deips01138.o):(.text+0x0): multiple definition of `localeconv' clocale.o:C:\Users\embray\src\gmp\gmp-6.0.0a\tests\cxx/clocale.c:50: first defined here collect2.exe: error: ld returned 1 exit status Makefile:522: recipe for target 't-locale.exe' failed make[4]: *** [t-locale.exe] Error 1 ***** snip ***** Please CC me on any follow-ups. Best, Erik _______________________________________________ gmp-bugs mailing list [email protected] https://gmplib.org/mailman/listinfo/gmp-bugs
-- Marc Glisse _______________________________________________ gmp-bugs mailing list [email protected] https://gmplib.org/mailman/listinfo/gmp-bugs
