mpir-1.0 on i686-apple-darwin8.11.1 built with gcc-4.3.3 fails in "make check".
(My understanding is that this is a Core, not a Core2 cpu.)
gcc -std=gnu99 -m32 -O2 -fomit-frame-pointer -mtune=pentiumpro -march=pentiumpro
-o t-bswap t-bswap.o ./.libs/libtests.a /usr/local/mpir-1.0/src/obj-x86-Darwin
-gcc-4.3.3-try2/.libs/libmpir.a ../.libs/libmpir.a
/usr/bin/ld: Undefined symbols:
_calling_conventions_ebp
_calling_conventions_ebx
_calling_conventions_edi
...
gmp suffers from the same failure on this architecture.
A workaround is to apply the patch that used to be listed in
http://gmplib.org/list-archives/gmp-bugs/2006-April/000317.html
(Fortunately I saved a private copy before it was censored.) The
workaround is to add at the bottom of test/x86call.asm:
C void gmp_x86check_workaround_apple_ld_bug()
C
C Apple ld has an annoying bug that causes it to only load members from
C static archives that satisfy text symbol dependencies. This procedure
C creates a bogus dependency on a text symbol in x86check.o (in libtests.a)
C to ensure that ld loads it, also making all of the needed non-text
C symbols available.
PROLOGUE(gmp_x86check_workaround_apple_ld_bug)
jmp *G(calling_conventions_check)
EPILOGUE()
Mariah