]> www.ginac.de Git - cln.git/blob - INSTALL
benchmarks: time{catalan,euler,exp1,zeta3}.cc actually compile and work now.
[cln.git] / INSTALL
1 Prerequisites.
2 =============
3
4 ANSI-compliant C++ compiler. GNU C++ compiler (version >= 3.4) is recommend.
5 Non-GNU compilers might not work at the moment.
6
7 GNU multiprecision library (http://gmplib.org), version > 4.0 (older 3.x
8 versions might work too).
9
10 [Optional] To build CLN documentation texinfo and TeX are necessary.
11
12 If you install CLN from git, you also need 
13
14 git itself (http://git.or.cz), version >= 1.5.0
15 GNU autoconf (http://www.gnu.org/software/autoconf), version >= 2.59
16 GNU libtool  (http://www.gnu.org/software/libtool), version >= 1.5
17 GNU automake (http://www.gnu.org/software/automake), version >= 1.8
18
19 Installation from a source .tar.bz2 distribution.
20 ================================================
21
22 $ ./configure
23 $ make
24 $ make check
25 [ become root if necessary ]
26 # make install
27
28 To build the manual in PDF, HTML, or PostScript formats, use one of
29
30 $ make pdf
31 $ make html
32 $ make ps
33
34 To compile and run CLN's test suite and check whether the library was
35 compiled correctly you can use
36
37 $ make check
38
39 The "configure" script can be given a number of options to enable and
40 disable various features. Most useful ones are:
41
42 --prefix=DIR
43
44 Install CLN into the directory DIR (default: /usr/local).
45
46 --with-gmp
47
48 Use GNU multiprecision library (default: yes, if available)
49
50 --disable-static
51
52 Don't build static version of CLN library. This option is useful if
53 want to reduce the build time (and you don't need the static library).
54
55 For a complete list, run:
56
57 $ ./configure --help
58
59
60 Installation from git.
61 =====================
62
63 1. Download the code.
64
65 Initial download:
66
67 $ git clone git://ffmssmsc.jinr.ru:443/varg/cln.git cln
68
69 Later on you can update your copy with
70
71 $ git pull
72
73 2. Make sure all required software is installed. This is *really*
74 important step. If some package is missing, the `configure' script might
75 be misgenerated,
76
77 3. Run
78
79 $ autoreconf -iv
80
81 to generate the `configure' script, and proceed in a standard way, i.e.
82
83 $ ./configure
84 $ make
85 [become root if necessary]
86 # make install
87
88 CLN is known to work with:
89 =========================
90
91   - Linux/x86, gcc-3.x, gcc-4.[0-2].x
92   - Linux/x86_64, gcc-3.[3-4], gcc-4.[0-2].x, gcc-4.3.0
93   - Linux/ia64, gcc-3.[2-4], gcc-4.[0-2].x
94   - Linux/arm, gcc-3.[0-3] (*), gcc-4.[0-2].x (*)
95   - Linux/mips, gcc-3.3, gcc-4.[0-2].x
96   - Linux/sparc, gcc-3.[1-3], gcc-4.[0-2].x
97   - Linux/alpha, gcc-3.[0-3], gcc-4.[0-2].x
98   - Linux/powerpc, gcc-3.[0-3], gcc-4.[0-2].x
99   - Linux/hppa, gcc-4.2.x (*)
100   - Solaris 2.4 (sparc), gcc-3.[1-3], gcc-4.[0-2].x (*)
101   - OSF/1 V4.0 (alpha), gcc-3.1
102   - Irix 6.5, gcc-3.0
103   - OS X Leopard (x86), gcc 4.0.1
104
105 (*) On these platforms, problems with the assembler routines have been
106 reported. It may be best to add "-DNO_ASM" to CPPFLAGS before
107 configuring.
108
109 Using gcc-4.2, the "make" step takes about 15 minutes, on an x86_64 / 2 GHz.
110
111 If you use g++ from gcc-3.0.4 or older on Sparc, add either "-O", "-O1" or
112 "-O2 -fno-schedule-insns" to the CXXFLAGS. With full "-O2", g++ miscompiles
113 the division routines. Do not use gcc-3.0 on Sparc for compiling CLN, it
114 won't work at all.
115
116 More detailed installation instructions can be found in the documentation,
117 in the doc/ directory.