X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=INSTALL;h=bfa4bdd97c9f14a45d0ca35fde0667eb9a748beb;hp=750d5164c0a134a983143513b0b0fd2d407750aa;hb=2205b83add319eb883b416c96a14b5866667baaa;hpb=5c0989497994b35faa9c17b18f936c21dbb22d78 diff --git a/INSTALL b/INSTALL index 750d5164..bfa4bdd9 100644 --- a/INSTALL +++ b/INSTALL @@ -1,27 +1,147 @@ -Installation: +PREREQUISITES ============= -As with any autoconfiguring GNU software, installation is as easy as this: +GiNaC requires the CLN library by Bruno Haible installed on your system. +It is available from . -sysprompt> ./configure -sysprompt> make -sysprompt> make check -sysprompt> make install +You will also need a decent ANSI-compliant C++-compiler. We recommend the +C++ compiler from the GNU compiler collection, GCC >= 3.4. 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. + +The pkg-config utility is required for configuration, it can be downloaded +from . + +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/x86, EGCS-1.1.2 or GCC 2-95. + - Linux on x86 and x86_64 using + - GCC 3.4, 4.0, 4.1, 4.2, 4.3.x (x >= 1), 4.4, 4.5, and 4.6 + - Clang 2.8 + - Windows on x86 using GCC 3.4 (MinGW) + +Known not to work with: + - Clang 2.7 and earlier due to poor C++ support. + - GCC 4.3.0 due to the compiler bug, + see . + - GCC 2.96 or earlier because proper exception and standard library support + is missing there. + +If you install from git, you also need GNU autoconf (>=2.59), automake (>=1.8), +libtool (>= 1.5), bison (>= 2.3), flex (>= 2.5.33) to be installed. + + +INSTALLATION +============ + +To install from a source .tar.bz2 distribution: + + $ ./configure + $ make + [become root if necessary] + # make install -The "make" step takes about 10 minutes, on a 586 DX / 133 MHz / 64 MB or -about 2 minutes on a P-III /550 MHz / 512 MB. +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 on optimization levels. To give you +a rough idea of what you have to expect the following table may be helpful. +It was measured on an Athlon X2/3GHz with 4Gb of RAM. + +step | GCC optimization | comment + | -O1 | -O2 | +--------------+---------+---------+---------------------------------------- +make | ~1m | ~2m | shared library only (--disable-static), + | | | parallel compilation (MAKEFLAGS=-j2) +make check | ~6m | ~6m | largely due to compilation + + +To install from git +=================== + +First, download the code: + $ git clone git://www.ginac.de/ginac.git ginac + $ cd ginac + +Secondly, make sure all required software is installed. This is *really* +important step. If some package is missing, the `configure' script might +be misgenerated, see e.g. this discussion: + + +Finally, run + + $ autoreconf -i + +to generate the `configure' script, and proceed in a standard way, i.e. + + $ ./configure + $ make + [become root if necessary] + # make install + +COMMON PROBLEMS +=============== + +Problems with CLN +----------------- + +You should use at least CLN-1.2.2, 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 GiNaC interactive shell, ginsh, makes use of GNU readline to provide +command line editing and history. If readline library and/or headers are +missing on your system, the configure script will issue a warning. In this +case you have two options: + +1) (the easiest) If you don't intend to use ginsh (i.e. if you need GiNaC +library to compile some piece of software), ignore it. ginsh builds just +fine without readline (obviously, it won't support the command line history +and editing). + +2) Install GNU readline and run the configure script once again. Depending on +what your system/distribution is, you will have to install a package called +libreadline and libreadline-dev (or readline-devel). 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 CLN: -================== +Problems with missing standard header files +------------------------------------------- -You should use at least CLN V1.0.2, since all earlier ones are -somewhat buggy. Even V1.0.1 has a few problems and GiNaC will not -support older versions. Please install it properly on your system -before continuing with GiNaC. +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.