arb/doc/source/setup.rst

135 lines
4.2 KiB
ReStructuredText
Raw Normal View History

2013-08-06 14:10:45 +02:00
.. _setup:
2013-05-31 19:40:05 +02:00
Setup
2012-10-11 13:09:44 +02:00
===============================================================================
Package managers
-------------------------------------------------------------------------------
The easiest way to install Arb including all dependencies is via ready-made
packages available for various distributions.
Note that some packages may not be up to date.
* Debian / Ubuntu / Linux Mint
- https://packages.debian.org/source/sid/flint-arb
* Fedora
- https://admin.fedoraproject.org/pkgdb/package/rpms/arb/
* Arch Linux
- https://www.archlinux.org/packages/community/x86_64/arb/
- https://www.archlinux.org/packages/community/i686/arb/
* Guix
- https://www.gnu.org/software/guix/packages/
Download
-------------------------------------------------------------------------------
Tarballs of released versions can be downloaded from https://github.com/fredrik-johansson/arb/releases
Alternatively, you can simply install Arb from a git checkout of https://github.com/fredrik-johansson/arb/.
The master branch is generally safe to use (the test suite should pass at all
times), and recommended for
keeping up with the latest changes.
2013-05-31 19:40:05 +02:00
Dependencies
-------------------------------------------------------------------------------
2012-10-11 13:09:44 +02:00
Arb has the following dependencies:
2013-05-31 20:47:08 +02:00
* Either MPIR (http://www.mpir.org) 2.6.0 or later, or GMP (http://www.gmplib.org) 5.1.0 or later.
If MPIR is used instead of GMP, it must be compiled with the ``--enable-gmpcompat`` option.
* MPFR (http://www.mpfr.org) 3.0.0 or later.
2014-11-15 16:53:38 +01:00
* FLINT (http://www.flintlib.org) version 2.4 or later. You may also
use a git checkout of https://github.com/fredrik-johansson/flint2
2013-05-31 19:40:05 +02:00
Standalone installation
-------------------------------------------------------------------------------
2012-10-11 13:09:44 +02:00
2013-05-31 19:40:05 +02:00
To compile, test and install Arb from source as a standalone library,
first install FLINT. Then go to the Arb source directory and run::
2012-10-11 13:09:44 +02:00
./configure <options>
make
2013-05-31 19:40:05 +02:00
make check (optional)
2012-10-11 13:09:44 +02:00
make install
2013-05-07 17:44:46 +01:00
If GMP/MPIR, MPFR or FLINT is installed in some other location than
2013-05-25 02:27:50 +02:00
the default path ``/usr/local``, pass
``--with-gmp=...``, ``--with-mpfr=...`` or ``--with-flint=...`` with
the correct path to configure (type ``./configure --help`` to show
2012-10-11 13:09:44 +02:00
more options).
After the installation, you may have to run ``ldconfig``.
Installation as part of FLINT (deprecated)
-------------------------------------------------------------------------------
WARNING: this feature is being deprecated. Please install Arb as a separate
library, as detailed above.
With some versions of FLINT, Arb can be compiled as a FLINT
extension package.
Simply put the Arb source directory somewhere, say ``/path/to/arb``.
Then go to the FLINT source directory and build FLINT using::
./configure --extensions=/path/to/arb <other options>
make
make check (optional)
make install
This is convenient, as Arb does not need to be
configured or linked separately. Arb becomes part of the compiled FLINT
library, and the Arb header files will be installed along with the other
FLINT header files.
2013-05-31 19:40:05 +02:00
Running code
-------------------------------------------------------------------------------
Here is an example program to get started using Arb:
2012-10-11 13:09:44 +02:00
.. code-block:: c
2014-09-25 16:34:50 +02:00
#include "arb.h"
2012-10-11 13:09:44 +02:00
int main()
{
2014-09-25 16:34:50 +02:00
arb_t x;
arb_init(x);
arb_const_pi(x, 50 * 3.33);
arb_printn(x, 50, 0); flint_printf("\n");
flint_printf("Computed with arb-%s\n", arb_version);
2014-09-25 16:34:50 +02:00
arb_clear(x);
2012-10-11 13:09:44 +02:00
}
2013-05-31 19:40:05 +02:00
Compile it with::
gcc test.c -larb
2013-05-31 19:40:05 +02:00
Depending on the environment, you may also have to pass
the flags ``-lflint``, ``-lmpfr``, ``-lgmp`` to the compiler.
2013-05-31 19:40:05 +02:00
If the Arb/FLINT header and library files are not in a standard location
(``/usr/local`` on most systems), you may also have to provide flags such as::
2013-05-31 19:40:05 +02:00
-I/path/to/arb -I/path/to/flint -L/path/to/flint -L/path/to/arb
Finally, to run the program, make sure that the linker
2013-05-31 19:40:05 +02:00
can find the FLINT (and Arb) libraries. If they are installed in a
nonstandard location, you can for example add this path to the
``LD_LIBRARY_PATH`` environment variable.
The output of the example program should be something like the following::
2012-10-11 13:09:44 +02:00
[3.1415926535897932384626433832795028841971693993751 +/- 6.28e-50]
2014-11-15 16:53:38 +01:00
Computed with arb-2.4.0