This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
GMP 4.2 a disaster on Darwin
- From: howarth at bromo dot msbb dot uc dot edu (Jack Howarth)
- To: fortran at gcc dot gnu dot org
- Date: Sat, 29 Apr 2006 14:37:36 -0400 (EDT)
- Subject: GMP 4.2 a disaster on Darwin
Houston we have a problem... The new GMP 4.2 on MacOS X 10.4 apparently
builds 64 bit binaries for the first time. Now I find that it is impossible
to build gcc 4.1 branch (even with the proposed configure.in patch) due to
the following breakage...
configure:600: checking host system type
configure:621: checking target system type
configure:639: checking build system type
configure:694: checking for a BSD compatible install
configure:747: checking whether ln works
configure:771: checking whether ln -s works
configure:1825: checking for gcc
configure:1938: checking whether the C compiler (gcc ) works
configure:1954: gcc -o conftest conftest.c 1>&5
configure:1980: checking whether the C compiler (gcc ) is a cross-compiler
configure:1985: checking whether we are using GNU C
configure:1994: gcc -E conftest.c
configure:2013: checking whether gcc accepts -g
configure:2080: checking for gnatbind
configure:2145: checking whether compiler driver understands Ada
configure:2177: checking how to compare bootstrapped objects
configure:2275: checking for correct version of gmp.h
configure:2288: gcc -c -g -O2 -I/sw/include conftest.c 1>&5
configure:2301: checking for MPFR
configure:2314: gcc -o conftest -g -O2 -I/sw/include conftest.c -L/sw/lib -lmpfr -lgmp 1>&5
/usr/bin/ld: /sw/lib/libgmp.dylib bad magic number (not a Mach-O file)
/usr/bin/ld: /sw/lib/libgmp.3.dylib bad magic number (not a Mach-O file)
collect2: ld returned 1 exit status
configure: failed program was:
#line 2306 "configure"
#include "confdefs.h"
#include <gmp.h>
#include <mpfr.h>
int main() {
mpfr_t n; mpfr_init(n);
; return 0; }
I had noticed that 'otool -L' had reported for libgmp.3.3.0.dylib
/sw/lib/libgmp.3.3.0.dylib: is not an object file
while 'file' shows...
/sw/lib/libgmp.3.3.0.dylib: Mach-O 64-bit dynamically linked shared library ppc64
I suspected this was going to be trouble when I tried running gmp-bench and
had to build it as -arch ppc64. So the current gmp 4.2 forces the users
to build a ppc64 only. Ugh.
Jack
ps Actually the breakage is even worse since...
gcc -arch ppc64 -o conftest -g -O2 -I/sw/include conftest.c -L/sw/lib -lmpfr -lgmp
fails as well because mpfr is built as a 32 bit shared library.