Next: , Previous: Introduction to MPFR, Up: Top


2 Installing MPFR

The MPFR library is already installed on some GNU/Linux distributions, but the development files necessary to the compilation such as mpfr.h are not always present. To check that MPFR is fully installed on your computer, you can check the presence of the file mpfr.h in /usr/include, or try to compile a small program having #include <mpfr.h> (since mpfr.h may be installed somewhere else). For instance, you can try to compile:

     #include <stdio.h>
     #include <mpfr.h>
     int main (void)
     {
       printf ("MPFR library: %-12s\nMPFR header:  %s (based on %d.%d.%d)\n",
               mpfr_get_version (), MPFR_VERSION_STRING, MPFR_VERSION_MAJOR,
               MPFR_VERSION_MINOR, MPFR_VERSION_PATCHLEVEL);
       return 0;
     }

with

     cc -o version version.c -lmpfr -lgmp

and if you get errors whose first line looks like

     version.c:2:19: error: mpfr.h: No such file or directory

then MPFR is probably not installed. Running this program will give you the MPFR version.

If MPFR is not installed on your computer, or if you want to install a different version, please follow the steps below.

2.1 How to Install

Here are the steps needed to install the library on Unix systems (more details are provided in the INSTALL file):

  1. To build MPFR, you first have to install GNU MP (version 4.1 or higher) on your computer. You need a C compiler, preferably GCC, but any reasonable compiler should work. And you need the standard Unix ‘make’ command, plus some other standard Unix utility commands.

    Then, in the MPFR build directory, type the following commands.

  2. ./configure

    This will prepare the build and setup the options according to your system. You can give options to specify the install directories (instead of the default /usr/local), threading support, and so on. See the INSTALL file and/or the output of ‘./configure --help’ for more information, in particular if you get error messages.

  3. make

    This will compile MPFR, and create a library archive file libmpfr.a. On most platforms, a dynamic library will be produced too.

  4. make check

    This will make sure MPFR was built correctly. If you get error messages, please report this to ‘mpfr@loria.fr’. (See Reporting Bugs, for information on what to include in useful bug reports.)

  5. make install

    This will copy the files mpfr.h and mpf2mpfr.h to the directory /usr/local/include, the library files (libmpfr.a and possibly others) to the directory /usr/local/lib, the file mpfr.info to the directory /usr/local/share/info, and some other documentation files to the directory /usr/local/share/doc/mpfr (or if you passed the ‘--prefix’ option to configure, using the prefix directory given as argument to ‘--prefix’ instead of /usr/local).

2.2 Other `make' Targets

There are some other useful make targets:

2.3 Build Problems

In case of problem, please read the INSTALL file carefully before reporting a bug, in particular section “In case of problem”. Some problems are due to bad configuration on the user side (not specific to MPFR). Problems are also mentioned in the FAQ http://www.mpfr.org/faq.html.

Please report problems to ‘mpfr@loria.fr’. See Reporting Bugs. Some bug fixes are available on the MPFR 3.0.0 web page http://www.mpfr.org/mpfr-3.0.0/.

2.4 Getting the Latest Version of MPFR

The latest version of MPFR is available from ftp://ftp.gnu.org/gnu/mpfr/ or http://www.mpfr.org/.