4 GiNaC requires the CLN library by Bruno Haible installed on your system.
5 It is available from <ftp://ftpthep.physik.uni-mainz.de/pub/gnu/>.
7 You will also need a decent ANSI-compliant C++-compiler. We recommend the
8 C++ compiler from the GNU compiler collection, GCC >= 3.4. If you have a
9 different or older compiler you are on your own. Note that you may have to
10 use the same compiler you compiled CLN with because of differing
11 name-mangling schemes.
13 The pkg-config utility is required for configuration, it can be downloaded
14 from <http://pkg-config.freedesktop.org/>.
16 To build the GiNaC tutorial and reference manual the doxygen utility
17 (it can be downloaded from http://www.stack.nl/~dimitri/doxygen) and
21 - Linux on x86 and x86_64 using GCC 3.4, 4.0, 4.1, and 4.2.
22 - Linux on Alpha using GCC 3.4.
23 - Solaris on Sparc using GCC 3.4.
24 - Windows on x86 using GCC 3.4 (MinGW)
26 Known not to work with:
27 - GCC 4.3.0 due to the compiler bug,
28 see <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35548>.
29 - GCC 2.96 or earlier because proper exception and standard library support
32 If you install from CVS, you also need GNU autoconf (>=2.59), automake (>=1.7),
33 libtool (>= 1.5), bison (>= 2.3), flex (>= 2.5.33), autogen (>= 5.6.0) to be
40 To install from a source .tar.bz2 distribution:
44 [become root if necessary]
47 To build the GiNaC tutorial and reference manual in HTML, DVI, PostScript,
48 or PDF formats, use one of
55 To compile and run GiNaC's test and benchmark suite and check whether the
56 library works correctly you can use
60 The "configure" script can be given a number of options to enable and
61 disable various features. For a complete list, type:
65 A few of the more important ones:
67 --prefix=PREFIX install architecture-independent files in PREFIX
68 [defaults to /usr/local]
69 --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
70 [defaults to the value given to --prefix]
71 --disable-shared suppress the creation of a shared version of libginac
72 --disable-static suppress the creation of a static version of libginac
74 More detailed installation instructions can be found in the documentation,
75 in the doc/ directory.
77 The time the "make" step takes depends heavily on optimization levels. Large
78 amounts of memory (>128MB) will be required by the compiler, also depending
79 on optimization. To give you a rough idea of what you have to expect the
80 following table may be helpful. It was measured on an Athlon/800MHz with
83 step | GCC optimization | comment
85 --------------+---------+---------+----------------------------------------
86 make | ~6m | ~8m | shared and static library
87 make check | ~8m | ~12m | largely due to compilation
93 First, download the code:
95 $ cvs -d :pserver:anoncvs@cvs.ginac.de:/home/cvs/GiNaC login
96 [enter "anoncvs" as the password]
97 $ cvs -d :pserver:anoncvs@cvs.ginac.de:/home/cvs/GiNaC co GiNaC
100 Secondly, make sure all required software is installed. This is *really*
101 important step. If some package is missing, the `configure' script might
102 be misgenerated, see e.g. this discussion:
103 <http://www.ginac.de/pipermail/ginac-list/2007-November/001263.html>
109 to generate the `configure' script, and proceed in a standard way, i.e.
113 [become root if necessary]
122 You should use at least CLN-1.1, since during the development of GiNaC
123 various bugs have been discovered and fixed in earlier versions. Please
124 install CLN properly on your system before continuing with GiNaC.
126 Problems building ginsh
127 -----------------------
129 The GiNaC interactive shell, ginsh, makes use of GNU readline to provide
130 command line editing and history. If readline library and/or headers are
131 missing on your system, the configure script will issue a warning. In this
132 case you have two options:
134 1) (the easiest) If you don't intend to use ginsh (i.e. if you need GiNaC
135 library to compile some piece of software), ignore it. ginsh builds just
136 fine without readline (obviously, it won't support the command line history
139 2) Install GNU readline and run the configure script once again. Depending on
140 what your system/distribution is, you will have to install a package called
141 libreadline and libreadline-dev (or readline-devel). If your system's vendor
142 doesn't supply such packages, go to <ftp://ftp.gnu.org/gnu/readline/> and
143 compile it yourself. Note that non-GNU versions of libreadline (in particular
144 one shipped with Mac OS X) are not supported at the moment.
146 Problems with missing standard header files
147 -------------------------------------------
149 Building GiNaC requires many standard header files. If you get a configure
150 error complaining about such missing files your compiler and library are
151 probably not up to date enough and it's no worth continuing.