# GMP-&gmp-version;

GMP is a library for arithmetic on arbitrary precision integers, rational numbers, and floating-point numbers.

## Installation of GMP

If you are compiling this package on a different CPU than you plan to run the CLFS system on, you must replace GMP's `config.guess` and `config.sub` wrappers with the originals. This will prevent GMP from optimizing for the wrong CPU. You can make this change with the following command:

    mv -v config{fsf,}.guess
    mv -v config{fsf,}.sub

Prepare GMP for compilation:

    CC="gcc -isystem /usr/include" \
    CXX="g++ -isystem /usr/include" \
    LDFLAGS="-Wl,-rpath-link,/usr/lib:/lib" \
      ./configure --prefix=/usr --enable-cxx

Compile the package:

    make

The test suite for GMP is considered critical. Do not skip it under any circumstance.

Test the results:

    make check

Install the package:

    make install

## Contents of GMP

Installed libraries
- libgmp.[a,so], libgmpxx.[a,so], libmp.[a,so]

Short Descriptions

`libgmp`

- Contains the definitions for GNU multiple precision functions.

`libgmpxx`

- Contains a C++ class wrapper for GMP types.

`libmp`

- Contains the Berkeley MP compatibility library.