summaryrefslogtreecommitdiff
path: root/INSTALL
blob: cd3b5fecc1dd9cb313889bea3be97d22d038a749 (plain)
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
		Installing mpfr-0.0
		===================

0. You first need to install GMP. See <http://www.swox.com/gmp/>.
   MPFR needs the gmp include file gmp-mparam.h that will be
   created during the compilation of gmp in the mpn subdirectory.
   So that all GMP include files are in the same directory, once
   you are in the GMP source directory (where the files gmp.h,
   gmp-impl.h, longlong.h and stack-alloc.h already are), type:

	ln -s mpn/gmp-mparam.h .

1. type "./Configure" and answer to the questions

2. type "make" (produces libmpfr.a)

3. type "make doc" to produce the documentation (DVI file mpfr.dvi)

4. type "cd tests; make" (produces and runs the test files)

Notes:

- we tested the installation with GMP 2.0.2 on the following architectures:

Pentium II and III/Linux 2.2.10
Alpha 21264/OSF1 V4.0
SGI R10000/IRIX 6.5 (both using 32- and 64-bit limbs)
Sun UltraSparc/Solaris 2.6
HP 9000/HP-UX A.09.05
Pentium/Windows with Cygnus compiler

Known problems.
===============

1) On some architectures (for example Alpha/OSF), the default 'make' command 
crashes in step 3. GNU make is preferred.

2) Under HP-UX, Pentium/Linux and AIX, don't use the -pedantic option, 
   otherwise gcc complains with the longlong.h file from GMP.

3) On the Alpha, the test file for the square root (tsqrt) may produce
errors as follows:

libm.a differs from mpfr_sqrt for a=9.89438396044940260000e-134, rnd_mode=2
libm.a gives 3.14553397063986620000e-67, mpfr_sqrt gives 3.14553397063986680000e-67 (1 ulp)
libm.a differs from mpfr_sqrt for a=7.86528588050363750000e+31, rnd_mode=1
libm.a gives 8.86864469944739500000e+15, mpfr_sqrt gives 8.86864469944739400000e+15 (-1 ulp)

Also, Linux on Alpha is known to have problems with IEEE conformance. See
http://www.linux.org.uk/VERSION/relnotes.2211.html.

In most cases, as above, the error comes from the libm.a. On Alpha/Linux,
which is known to have a bad libm.a, you may even find errors in the
addition or multiplication.

4) With version 2.0.2 of GMP, add -DGMP2 in the configure options.

In case of problem.
===================

Please contact us at mpfr@loria.fr, indicating the machine and operating
system used (uname -a), the compiler used (gcc -v) and a description of
the problem encountered.