User documentation

GMP is an essential external library for CoCoALib: a sufficiently
recent version of GMP must be present to permit compilation of CoCoALib.
The CoCoALib classes BigInt and BigRat are simply wrappers for
the underlying GMP types.

At the moment CoCoALib does not require the C++ interface to GMP,
however if you wish to combine CoCoALib with the external library
Normaliz then the C++ interface to GMP must also be present.

During configuration of GMP we recommend giving the option --enable-cxx
even though this is not strictly necessary for CoCoALib. We also
recommend building the static libraries (in GMP-6.1.0 both static and
shared libraries are built by default, but check the documentation of
the version of GMP which you obtained).

./configure --enable-cxx

make

If you have the relevant permissions (and you want to), you can
"install" the GMP library by running make install. If you do
install the GMP library, it is important that you run the privileged
command ldconfig to properly register the new shared libraries.
If you do not install the library then make a note of the full path
to where the file libgmp.a is (on my computer it is in an
invisible subdirectory called .libs), as you must specify this
when configuring CoCoALib.

Then configure and compile CoCoALib by typing (but without the
option --with-libgmp if GMP is properly installed).