gmp 4.3.0 tests fail on Mac OS X 10.5

Torbjorn Granlund tg at gmplib.org
Fri May 8 08:12:12 CEST 2009


Jack Howarth <howarth at bromo.med.uc.edu> writes:

      Actually, I am finding that the current hg update of the patched
  gmp 4.3.0 sources compiles fine when I use the gcc-4.2 and g++-4.2

Good!

  compilers in Xcode 3.1.2 under Mac OS X 10.5.6 on a MacBook Pro v2.1
  but fail when using the stock gcc-4.0 and g++-4.0 compilers with the
  error...
  
  ld: duplicate symbol ___gmpz_abs in .libs/compat.o and .libs/assert.o
  collect2: ld returned 1 exit status
  make[2]: *** [libgmp.la] Error 1
  make[1]: *** [all-recursive] Error 1
  make: *** [all] Error 2
  
Just to save us both time: Please make sure that happens with a clean
build, and that you tell *configure* which compiler you are using.

It works for me(tm) with at least one build of the old compilers.  I am
inclined to ignore this last Apple problem, since it happens with older
tools, and not always.

  gmp.h:1631: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1657: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1668: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1679: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1690: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1718: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1729: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1742: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1760: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1778: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1789: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1800: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:1810: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:2055: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:2068: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:2081: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:2094: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:2107: warning: '__gnu_inline__' attribute directive ignored
  gmp.h:2120: warning: '__gnu_inline__' attribute directive ignored
  
I can live with that, I leave it to people that are bothered to implemnt
a workarund.

  which don't occur with the gcc-4.2/g++-4.2 compilers. With the 4.2
  compilers, the resulting build passes all of the make check.
                           Jack
  ps In both cases, I am configuring with...
  
    $ ./configure --prefix=/sw --infodir=${prefix}/share/info --enable-cxx --libdir=${prefix}/lib
  
I don't see any CC=...  there, so you might be foolingn configure into
believing that the compiler behaves in a certain way, while you then use
a different compiler with different behaviour...

  I would also note that the older gcc-4.0/g++-4.0 doesn't understand
  -mtune=core2 but that the newer gcc-4.2/g++-4.2 compilers do.
  
Sure.  A god reason to test with older compilers, so that we make sure
the mechanisms for backing off of the such switches work correctly.

-- 
Torbjörn


More information about the gmp-bugs mailing list