]> www.ginac.de Git - cln.git/blob - INSTALL
Detect s390x and sparc64 as 32-bit architectures.
[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://www.ginac.de/cln.git
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-5].x
92   - Linux/x86_64, gcc-3.[3-4], gcc-4.[0-6].x, clang-2.8
93   - Linux/ia64, gcc-3.[2-4], gcc-4.[0-4].x
94   - Linux/arm, gcc-3.[0-3] (*), gcc-4.[0-4].x (*)
95   - Linux/mips, gcc-3.3, gcc-4.[0-4].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-4].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   - Windows/32-bit, MSVC 16.00.30319.01
105
106 (*) On these platforms, problems with the assembler routines have been
107 reported. It may be best to add "-DNO_ASM" to CPPFLAGS before
108 configuring.
109
110 Using gcc-4.2, the "make" step takes about 15 minutes, on an x86_64 / 2 GHz.
111
112 If you use g++ from gcc-3.0.4 or older on Sparc, add either "-O", "-O1" or
113 "-O2 -fno-schedule-insns" to the CXXFLAGS. With full "-O2", g++ miscompiles
114 the division routines. Do not use gcc-3.0 on Sparc for compiling CLN, it
115 won't work at all.
116
117 More detailed installation instructions can be found in the documentation,
118 in the doc/ directory.