|
| 1 | +# Instructions on installing FLINT |
| 2 | + |
| 3 | +## Building from release |
| 4 | + |
| 5 | +If building FLINT from a release (such as a tarball), one needs the following: |
| 6 | + |
| 7 | +* GMP (https://gmplib.org/) |
| 8 | +* MPFR (https://mpfr.org/) |
| 9 | +* Either of the following build systems: |
| 10 | + * GNU Make |
| 11 | + * CMake (Only supported for Windows users) |
| 12 | + |
| 13 | +Moreover, if user intends to use FLINT's assembly code, user needs to have the |
| 14 | +M4 preprocessor installed. |
| 15 | + |
| 16 | +One can install GMP, MPFR and GNU Make on a Ubuntu system via |
| 17 | + |
| 18 | + apt install libgmp-dev libmpfr-dev make |
| 19 | + |
| 20 | +After this, FLINT should be ready to install, which can be done as follows: |
| 21 | + |
| 22 | + ./configure |
| 23 | + make -j |
| 24 | + make install |
| 25 | + |
| 26 | +We also recommend that you run ``make check`` to check that the build was done |
| 27 | +correctly before installing. |
| 28 | + |
| 29 | +For a complete list of settings, write |
| 30 | + |
| 31 | + ./configure --help |
| 32 | + |
| 33 | +An example of a custom configuration command would be |
| 34 | + |
| 35 | + ./configure \ |
| 36 | + --enable-assert \ |
| 37 | + --disable-static \ |
| 38 | + --with-gmp-include=/home/user1/builds/includes/ \ |
| 39 | + --with-gmp-lib=/home/user1/builds/lib/ \ |
| 40 | + --with-mpfr=/usr \ |
| 41 | + --prefix=/home/user1/installations/ \ |
| 42 | + CC=clang \ |
| 43 | + CFLAGS="-Wall -O3 -march=alderlake" |
| 44 | + |
| 45 | +For more information, see the FLINT documentation. |
| 46 | + |
| 47 | +## Building from scratch |
| 48 | + |
| 49 | +When building from scratch, one needs to generate the configuration script. For |
| 50 | +this, the user also needs to install GNU Autotools, which on a Ubuntu system can |
| 51 | +be done via |
| 52 | + |
| 53 | + apt install autoconf libtool-bin |
| 54 | + |
| 55 | +After this, run |
| 56 | + |
| 57 | + ./bootstrap.sh |
| 58 | + |
| 59 | +and FLINT should then be ready to be configured, built, checked and installed as |
| 60 | +described by the previous section. |
0 commit comments