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. To build the GiNaC tutorial and reference manual the doxygen utility (it can be downloaded from http://www.stack.nl/~dimitri/doxygen) and TeX are necessary. 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 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 GNU 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. Note that non-GNU versions of libreadline (in particular one shipped with Mac OS X) are not supported at the moment. 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.