forked from JohnCremona/eclib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
65 lines (53 loc) · 3 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
In addition to the generic installation instructions given in the
INSTALL file, note the following. You can see all options to
configure by typing ./configure --help.
1. DEPENDENCIES
(a) The configure script will check or the existence of gmp and will
fail if it does not find it.
(b) Both NTL and PARI are required. If they have not been installed
in a place where the system will find them automatically (such as
/usr/local) then you will need to specify where they are when you
configure, like this:
./configure --with-pari=<path> --with-ntl=<path>
If you have Sage installed in SAGE_ROOT then you can use
$SAGE_ROOT/local for both of these. Note that when you specify these
locations, no check is done that a usable version exists in that
place: it will be assumed that <path>/include and <path>/lib contain
appropriate include files and libraries, and the build will fail if
not.
(c) FLINT is optional (from eclib-2013-01-01) and only used for one
part of sparse matrix reduction, which is used in the modular symbol
code but not mwrank or other elliptic curve programs. If a suitable
FLINT version is found (which must be at least version 2.3, to contain
the nmod_mat module) it will be used. If in addition you have the
optional FLINT module hmod_mat (which does modular matrix operations
using 32-bit data types) this can be activated as follows; the
advantage being that the modular symbol code will require less RAM to
run: either (i) after ./configure, edit ./Makefile and all */Makefile,
setting FLINT_LEVEL=2 (instead of =1); or (ii) edit configure itself
similarly (in two places) and rerun it; or (iii) append
CXXFLAGS='-DFLINT_LEVEL=2' to the make invocation (and ignore warnings
about FLINT_LEVEL being redefined).
(d) Boost is optional (from eclib-2013-09-00) and provides parallel
capabilities in the form_finder class. Configure with --with-boost
specifying location of a fully built version of Boost, i.e. not
just the header files. After initial configure, if an error occurs,
run autoreconf and configure again. Autotools will initiate the
macros in m4/ directory and look for Boost.asio, Boost.thread, and
Boost.system. Refer ti ./configure --help for more configuration
options.
2. By default a lot of programs, including test programs, are built
and will be installed by "make install". We only provide one option
here: if you do
./configure --disable-allprogs
then the only program built will be mwrank. (The whole eclib library
will always be built).
3. After running make, "make check" will build and run a lot of test
programs (in the subdirectory tests) and check that they give the
expected output (using test input files in tests/in and comparing with
the expected outputs in tests/out).
4. "make install" will install header files, library files, and test
program binaries in subdirectories include, lib, bin in /usr/local by
default, so that you would need to run "make install" with superuser
privileges). You can specify an alternative place either by adding
--prefix=<path> to the ./configure command line.