PREREQUISITES
=============
GiNaC requires the CLN library by Bruno Haible installed on your system.
It is available from .
You will also need a decent ANSI-compliant C++-compiler. We recommend the
C++ compiler from the GNU compiler collection, GCC >= 3.0. If you have a
different or older compiler you are on your own. Note that you may have to
use the same compiler you compiled CLN with because of differing
name-mangling schemes.
Known to work with:
- Linux on x86, Alpha and Sparc using GCC 3.x and 4.0.
Known not to work with:
- GCC 2.96 or earlier because proper exception and standard library support
is missing there.
If you install from CVS, you also need GNU autoconf (>=2.59) and
automake (>=1.7) to be installed.
INSTALLATION
============
To install from a source .tar.bz2 distribution:
$ ./configure
$ make
[become root if necessary]
# make install
To install from CVS:
$ cvs -d :pserver:anoncvs@cvs.ginac.de:/home/cvs/GiNaC login
[enter "anoncvs" as the password]
$ cvs -d :pserver:anoncvs@cvs.ginac.de:/home/cvs/GiNaC co GiNaC
$ cd GiNaC
$ autoreconf -i
$ ./configure
$ make
[become root if necessary]
# make install
To build the GiNaC tutorial and reference manual in HTML, DVI, PostScript,
or PDF formats, use one of
$ make html
$ make dvi
$ make ps
$ make pdf
To compile and run GiNaC's test and benchmark suite and check whether the
library works correctly you can use
$ make check
The "configure" script (and "autogen.sh", which invokes "configure") can be
given a number of options to enable and disable various features. For a
complete list, type:
$ ./configure --help
A few of the more important ones:
--prefix=PREFIX install architecture-independent files in PREFIX
[defaults to /usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[defaults to the value given to --prefix]
--disable-shared suppress the creation of a shared version of libginac
--disable-static suppress the creation of a static version of libginac
More detailed installation instructions can be found in the documentation,
in the doc/ directory.
The time the "make" step takes depends heavily on optimization levels. Large
amounts of memory (>128MB) will be required by the compiler, also depending
on optimization. To give you a rough idea of what you have to expect the
following table may be helpful. It was measured on an Athlon/800MHz with
"enough" memory:
step | GCC optimization | comment
| -O1 | -O2 |
--------------+---------+---------+----------------------------------------
make | ~6m | ~8m | shared and static library
make check | ~8m | ~12m | largely due to compilation
COMMON PROBLEMS
===============
Problems with CLN
-----------------
You should use at least CLN-1.1, since during the development of GiNaC
various bugs have been discovered and fixed in earlier versions. Please
install CLN properly on your system before continuing with GiNaC.
Problems building ginsh
-----------------------
The most common reason why this doesn't succeed is the absence of
libreadline and/or the corresponding header files. Depending on what your
system/distribution is, you will have to install a package called
libreadline and maybe libreadline-dev. If your system's vendor doesn't
supply such packages, go to and compile
it yourself.
Problems with missing standard header files
-------------------------------------------
Building GiNaC requires many standard header files. If you get a configure
error complaining about such missing files your compiler and library are
probably not up to date enough and it's no worth continuing.