Dear all, First thanks a lot for your hard work on the Cygwin project and the Cygwin64 project.
I've begun to try to build Sage (http://www.sagemath.org) on Cygwin64 to provide some Windows support without the need of a virtual machine running Linux and now have some trouble compiling a working MPIR 2.6.0 (http://www.mpir.org) library. Note that I have no problems building a proper static or shared version of GMP 5.1.2 with the GCC 4.8.1 toolchain currently provided with Cygwin64, and it passes its complete testsuite. At some point we should be able to switch to GMP, but we still have some dependencies relying on MPIR's internals, so we have (and want, even in the future by default) to stick with MPIR. Also note we have no problem using MPIR on 32 bit Cygwin. So my problem with MPIR are as follow: * the ./configfsf.[guess|sub] and yasm/config/config.[guess|sub] file within the upstream tarball are too old and failed to recognize Cygwin64, replacing them with up-to-date version easily solves that, * I have no problem building a static lib, but running make check fails when linking any test executable, e.g. the first one "t-bswap.exe": {{{ /bin/sh ../libtool --tag=CC --mode=link gcc -std=gnu99 -m64 -O2 -march=corei7-avx -mtune=corei7-avx -o t-bswap.exe t-bswap.o libtests.la ../libmpir.la libtool: link: gcc -std=gnu99 -m64 -O2 -march=corei7-avx -mtune=corei7-avx -o t-bswap.exe t-bswap.o ./.libs/libtests.a /home/jp/mpir-2.6.0/.libs/libmpir.a ../.libs/libmpir.a collect2: error: ld terminated with signal 11 [Segmentation fault], core dumped Makefile:503: recipe for target `t-bswap.exe' failed }}} A 0 byte t-bswap.exe is created and the content of the stackdump is {{{ $ cat tests/ld.exe.stackdump Exception: STATUS_ACCESS_VIOLATION at rip=0000000003E rax=00000001004C3FA0 rbx=000000060018DCB0 rcx=000000060018DCB0 rdx=000000060018ECA8 rsi=0000000000C2A580 rdi=0000000000000025 r8 =0000000000C2A590 r9 =00000000FFFFBFFF r10=0000000000C30000 r11=00000001004B111E r12=0000000000000001 r13=000000060018ECA9 r14=0000000100534780 r15=000000060018ECA8 rbp=0000000000C2A590 rsp=0000000000C2A528 program=C:\cygwin64\usr\x86_64-pc-cygwin\bin\ld.exe, pid 6744, thread main cs=0033 ds=002B es=002B fs=0053 gs=002B ss=002B Stack trace: Frame Function Args 00000C2A590 0000000003E (00000000000, 01300000001, 00100512180, 00000000000) 00000C2A590 00100493B54 (00000000000, 006000F4B30, 00000000023, 00000000000) 00000C2A650 00100433783 (00100534780, 00600057550, 001800C0C2C, 00000000000) 00000000000 0010040E82C (00600022D10, 00600023CF8, 00100436389, 00000000000) 00000000001 0010040F2E0 (001802DE300, 00600019870, 001800C0C2C, 00600017A30) 001004DDD08 001004113FB (00100520580, 00000000000, 001802E3E9D, 001802DF658) 001004DDD08 001004BF4C0 (00000C2A9B0, 00000C2AA46, 001801691B1, 00000000000) 00000C2AB80 0018004836E (00000000000, 00000000000, 00000000000, 00000000000) 00000000000 0018004618B (00000000000, 00000000000, 00000000000, 00000000000) 00000000000 0018004634F (00000000000, 00000000000, 00000000000, 00000000000) 00000000000 001004BDD31 (00000000000, 00000000000, 00000000000, 00000000000) 00000000000 00100401010 (00000000000, 00000000000, 00000000000, 00000000000) 00000000000 00076B7652D (00000000000, 00000000000, 00000000000, 00076BF9300) 00000000000 0007726C521 (00000000000, 00000000000, 00000000000, 00076BF9300) End of stack trace }}} * I have no problem building a shared lib, nor the test programs in that case, but many (but not all) of them segfaults when they are run. In the two above cases, I was not able to retrieve useful information when attaching gdb to the segfaulting process. I just saw that three threads were launched and the backtrace only involved Cygwin/Windows dlls. Did anyone among the Cygwin folk tried to build MPIR on Cygwin64 and got more success than I had? Or has any advice to solve these issues? Thanks in advance for your help, Best, -- Jean-Pierre Flori -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple