mirror of https://github.com/CGAL/cgal
doc boost mp as gmp replacement
This commit is contained in:
parent
12f278e431
commit
af8e134aa6
|
|
@ -72,23 +72,34 @@ As there is no canonical directory for where to find \boost on Windows,
|
||||||
we recommend that you define the environment variable
|
we recommend that you define the environment variable
|
||||||
`BOOST_ROOT` and set it to where you have installed \boost, e.g., `C:\boost\boost_1_70_0`.
|
`BOOST_ROOT` and set it to where you have installed \boost, e.g., `C:\boost\boost_1_70_0`.
|
||||||
|
|
||||||
\subsection thirdpartyMPFR GNU Multiple Precision Arithmetic (GMP) and GNU Multiple Precision Floating-Point Reliably (MPFR) Libraries
|
\subsection thirdpartyMP Multi Precision Number Type Library
|
||||||
<b>GMP Version 5.0.1 or later, MPFR Version 3.0.0 or later</b>
|
|
||||||
|
|
||||||
The components \cgal, `CGAL_Core`, and `CGAL_Qt6` require
|
GNU Multiple Precision Arithmetic (GMP) and GNU Multiple Precision Floating-Point Reliably (MPFR) Libraries
|
||||||
\gmp and \mpfr which are libraries for multi precision integers and rational numbers,
|
are libraries for multi precision integers and rational numbers, and for multi precision floating point numbers.
|
||||||
and for multi precision floating point numbers.
|
|
||||||
|
|
||||||
\cgal combines floating point arithmetic with exact arithmetic
|
|
||||||
in order to be efficient and reliable. \cgal has a built-in
|
|
||||||
number type for that, but \gmp and \mpfr provide a faster
|
|
||||||
solution, and we recommend using them.
|
|
||||||
|
|
||||||
These libraries can be obtained from <A HREF="https://gmplib.org/">`https://gmplib.org/`</A>
|
These libraries can be obtained from <A HREF="https://gmplib.org/">`https://gmplib.org/`</A>
|
||||||
and <A HREF="https://www.mpfr.org/">`https://www.mpfr.org/`</A>.
|
and <A HREF="https://www.mpfr.org/">`https://www.mpfr.org/`</A>.
|
||||||
Since Visual \cpp is not properly supported by the \gmp and \mpfr projects,
|
Since Visual \cpp is not properly supported by the \gmp and \mpfr projects,
|
||||||
we provide precompiled versions of \gmp and \mpfr, which can be downloaded
|
we provide precompiled versions of \gmp and \mpfr, which can be downloaded
|
||||||
from the <a href="https://github.com/CGAL/cgal/releases">assets of a release</a>.
|
from the <a href="https://github.com/CGAL/cgal/releases">assets of a release</a>.
|
||||||
|
Version supported are <b>GMP Version 5.0.1 or later, MPFR Version 3.0.0 or later</b>.
|
||||||
|
|
||||||
|
The \boost library also provides a module for multi precision integers and rational numbers:
|
||||||
|
<A HREF="https://www.boost.org/doc/libs/release/libs/multiprecision/doc/html/index.html">\boost multiprecision</A>.
|
||||||
|
Versions supported are <b>\boost Version 1.72 or later</b>.
|
||||||
|
|
||||||
|
The components \cgal, and `CGAL_Qt6` require either \gmp and \mpfr, or \boost multiprecision
|
||||||
|
for multi precision numbers. `CGAL_Core` requires \boost multiprecision.
|
||||||
|
|
||||||
|
\cgal combines floating point arithmetic with exact arithmetic
|
||||||
|
in order to be efficient and reliable. \cgal has a built-in
|
||||||
|
number type for that, but previous alternatives are faster
|
||||||
|
solutions, and we recommend using one of them.
|
||||||
|
|
||||||
|
The CMake variable `CGAL_CMAKE_EXACT_NT_BACKEND` can be used to select
|
||||||
|
the library that will be used internally for multi precision number types.
|
||||||
|
The variable `CGAL_CMAKE_EXACT_NT_BACKEND-STRINGS` contains all the possible
|
||||||
|
values.
|
||||||
|
|
||||||
\section secoptional3rdpartysoftware Optional Third Party Libraries
|
\section secoptional3rdpartysoftware Optional Third Party Libraries
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ Using \cgal requires a few core components to be previously installed:
|
||||||
<li> a supported compiler (see Section \ref seccompilers),</li>
|
<li> a supported compiler (see Section \ref seccompilers),</li>
|
||||||
<li> \ref seccmake,</li>
|
<li> \ref seccmake,</li>
|
||||||
<li> \ref thirdpartyBoost,</li>
|
<li> \ref thirdpartyBoost,</li>
|
||||||
<li> \ref thirdpartyMPFR.</li>
|
<li> a \ref thirdpartyMP.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
Optional third-party software might be required to build examples and demos shipped with \cgal,
|
Optional third-party software might be required to build examples and demos shipped with \cgal,
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
15.9, 16.0, 17.0 (\visualstudio 2017, 2019, and 2022).
|
15.9, 16.0, 17.0 (\visualstudio 2017, 2019, and 2022).
|
||||||
|
|
||||||
\cgal is a library that has mandatory dependencies that must be first installed:
|
\cgal is a library that has mandatory dependencies that must be first installed:
|
||||||
\ref thirdpartyBoost and \ref thirdpartyMPFR.
|
\ref thirdpartyBoost and a \ref thirdpartyMP.
|
||||||
|
|
||||||
You have two options to install \cgal and its dependencies: you can either use
|
You have two options to install \cgal and its dependencies: you can either use
|
||||||
the *Vcpkg library manager*, which will automatically install an appropriate version of
|
the *Vcpkg library manager*, which will automatically install an appropriate version of
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,8 @@ Release date: June 2024
|
||||||
- LLVM Clang version 15.0.7 or later (on Linux)
|
- LLVM Clang version 15.0.7 or later (on Linux)
|
||||||
- Apple Clang compiler versions 10.0.1, 12.0.5, and 15.0.0 (on macOS)
|
- Apple Clang compiler versions 10.0.1, 12.0.5, and 15.0.0 (on macOS)
|
||||||
- The minimal supported version of Boost is now 1.72.0.
|
- The minimal supported version of Boost is now 1.72.0.
|
||||||
|
- GMP/MPFR are no longer mandatory to use CGAL, [Boost.Multiprecision](https://www.boost.org/doc/libs/1_72_0/libs/multiprecision/doc/html/index.html).
|
||||||
|
can be used instead.
|
||||||
- The CGAL `Core` library is no longer based on GMP, but on
|
- The CGAL `Core` library is no longer based on GMP, but on
|
||||||
[Boost.Multiprecision](https://www.boost.org/doc/libs/1_72_0/libs/multiprecision/doc/html/index.html).
|
[Boost.Multiprecision](https://www.boost.org/doc/libs/1_72_0/libs/multiprecision/doc/html/index.html).
|
||||||
Either GMP backend or Boost backend can be used.
|
Either GMP backend or Boost backend can be used.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue