Hi,

It seems on my setup (MSYS+sezero 64-bit GCC 4.5.2), GMP 5.0.1 fails
to run the C++ tests when "--enable-cxx" is passed to configure and I
run "make check" from the main build directory. I ran them manually by
doing

> cd tests/cxx
> make check

They fail miserably:

> /bin/sh ../../libtool --tag=CXX   --mode=link x86_64-w64-mingw32-g++  
> -mtune=core2 -fomit-frame-pointer -momit-leaf-frame-pointer   -o t-locale.exe 
> t-locale.o clocale.o -L../../.libs../../tests/libtests.la ../../libgmpxx.la 
> ../../libgmp.la
> libtool: link: warning: library 
> `m:/development/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.5.2/../../../../lib64/libstdc++.la'
>  was moved.
> libtool: link: warning: library 
> `m:/development/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.5.2/../../../../lib64/libstdc++.la'
>  was moved.
> libtool: link: x86_64-w64-mingw32-g++ -mtune=core2 -fomit-frame-pointer 
> -momit-leaf-frame-pointer -o .libs/t-locale.exe t-locale.o clocale.o  
> -L/home/Ruben/mingw64/x64/gmp-test/.libs ../../tests/.libs/libtests.a 
> ../../.libs/libgmpxx.dll.a 
> /home/Ruben/mingw64/x64/gmp-test/.libs/libgmp.dll.a 
> m:/development/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.5.2/../../../../lib64/libstdc++.dll.a
>  ../../.libs/libgmp.dll.a -L/home/Ruben/mingw64/x64/libs/lib 
> -Lm:/development/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.5.2/../../../../lib64
> m:/development/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.5.2/../../../../x86_64-w64-mingw32/lib/libmsvcrt.a(dgtbbs01029.o):(.text+0x0):
>  multiple definition of `localeconv' > clocale.o:clocale.c:(.text+0x0): first 
> defined here
> collect2: ld returned 1 exit status
> make[1]: *** [t-locale.exe] Error 1

What's especially worrying, is that there is a reference to the libstdc++.la.

I removed the unneeded .la file, did a clean reconfigure and now got
this, I guess GMP tests aren't yet adapted to the presence of
localeconv in msvcrt.a:

> gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../../../../src/gmp-5.0.1/tests/cxx 
> -I../.. -I../../../../src/gmp-5.0.1 -I../../../../src/gmp-5.0.1/tests    
> -mtune=core2 -fomit-frame-pointer -momit-leaf-frame-pointer -c 
> ../../../../src/gmp-5.0.1/tests/cxx/clocale.c
> ../../../../src/gmp-5.0.1/tests/cxx/clocale.c:46:1: warning: 'localeconv' 
> redeclared without dllimport attribute: previous dllimport ignored
> /bin/sh ../../libtool --tag=CXX   --mode=link x86_64-w64-mingw32-g++  
> -mtune=core2 -fomit-frame-pointer -momit-leaf-frame-pointer   -o t-locale.exe 
> t-locale.o clocale.o -L../../.libs/../../tests/libtests.la ../../libgmpxx.la 
> ../../libgmp.la
> libtool: link: x86_64-w64-mingw32-g++ -mtune=core2 -fomit-frame-pointer 
> -momit-leaf-frame-pointer -o .libs/t-locale.exe t-locale.o clocale.o  
> -L/home/Ruben/mingw64/x64/gmp-test/.libs ../../tests/.libs/libtests.a 
> ../../.libs/libgmpxx.dll.a 
> /home/Ruben/mingw64/x64/gmp-test/.libs/libgmp.dll.a ../../.libs/libgmp.dll.a 
> -L/home/Ruben/mingw64/x64/libs/lib
> m:/development/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.5.2/../../../../x86_64-w64-mingw32/lib/libmsvcrt.a(dgtbbs01029.o):(.text+0x0):
>  multiple definition of `localeconv'
> clocale.o:clocale.c:(.text+0x0): first defined here
> collect2: ld returned 1 exit status
> make[1]: *** [t-locale.exe] Error 1

How can I fix this. I'll gladly do the patch submitting to GMP. Thanks!

Ruben

------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload 
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve 
application availability and disaster protection. Learn more about boosting 
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to