Build installs different "gmp.h" for 32- and 64-bit ABI's.

Torbjorn Granlund tg at
Tue Jun 23 13:49:38 CEST 2009

Andreev Konstantin <andreev at> writes:

  Here is a rationales:
  1) some software depends from affected symbols (__GMP_BITS_PER_MP_LIMB, GMP_LIMB_BITS).
  2) on most 64-bit platforms 32-bit applications co-exist in parallel:
     - linux, solaris on x86_64 runs i386 applications
     - solaris on sparcv9 runs sparcv8 applications
     - ...
  So, which "gmp.h" should be installed in /usr/include/gmp.h on a platform where 32- and 64-bit applications co-exist ?
Which limits.h should be installed?

Clearly, multi-ABI platforms need some provisions for handling multiple
include files, or have a common set of include files that reliably
detect the used ABI.

For GMP, we cannot *reliably* detect the used ABI, since it depends on
ad-hoc compiler parameters.

  I suppose, gmp should deliver unified "gmp.h" for all "instructions
  sets" of "target platform" out-of-the-box.

Perhaps gmp "should" do that.  The rub is how to do it.  


More information about the gmp-bugs mailing list