X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=INSTALL;h=fadf8baeef4837b4e781ed156ec82f9d06c70c76;hp=27873b6254e7081908f359e41f298dc83bfafc1d;hb=c9282804ff4127fc84bb01b2b8707fbb6724b003;hpb=11b04edda530b248b849d46fb310a9fad1c1892f diff --git a/INSTALL b/INSTALL index 27873b62..fadf8bae 100644 --- a/INSTALL +++ b/INSTALL @@ -1,7 +1,7 @@ -Prerequisites +PREREQUISITES ============= -GiNaC requires the CLN library by Bruno Haible, available at either +GiNaC requires the CLN library by Bruno Haible, available from either one of the following FTP-sites: * , * or @@ -12,16 +12,15 @@ different 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. -Optionally, GiNaC may work together with Masaharu Goto's C++ -interpreter cint (which requires that you register for commercial -use). You may obtain it from +Optionally, GiNaC may work together with Masaharu Goto's free C++ +interpreter Cint. You may obtain it from * . Install it by following the instructions included in Cint's distribution before trying to compile GiNaC-cint. (See section `Working with the Cint C++ interpreter' below.) -Installation +INSTALLATION ============ As with any autoconfiguring GNU software, installation is as easy as this: @@ -30,10 +29,12 @@ As with any autoconfiguring GNU software, installation is as easy as this: $ make $ make check [become root if necessary] - $ make install + # make install Known to work with: - - Linux/x86, EGCS-1.1.2 or GCC 2-95.1/2-95.2 + - Linux/x86, EGCS-1.1.x and GCC 2-95.x +Known not to work with: + - GCC 2.7.x or earlier because proper exception support is missing there. The "configure" script can be given a number of options to enable and disable various features. For a complete list, type: @@ -55,41 +56,59 @@ 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 -a P-III/500MHz with "enough" memory: +an Athlon/800MHz with "enough" memory: step: | GCC optimization level: | comment: | -O0 | -O1 | -O2 | --------------+--------+--------+--------+------------------------------- -make | ~4m | ~6m | ~10m | building shared and static lib -make check | ~2m | ~2m | ~7m | mostly due to compilation +make | ~4m | ~5m | ~6m | building shared and static lib +make check | ~20m | ~11m | ~12m | largely due to compilation +COMMON PROBLEMS +=============== + Problems with CLN -================= +----------------- -You should use at least CLN V1.0.3, since during the development of +You should use at least CLN-1.1, since during the development of GiNaC various bugs have been discovered and fixed in earlier versions. -To protect you, the "configure" script checks for a feature that was -added in V1.0.3 so it won't continue with earlier versions anyhow. Please install CLN properly on your system before continuing with -GiNaC. +GiNaC. When using GCC3 as compiler please use at least CLN-1.1.1 +since some parts of GiNaC won't build with CLN-1.1. + +Problems with 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. Working with the Cint C++ interpreter ===================================== -The interface to the Cint C++ interpreter is currently in an alpha -state. Please see to learn about -Cint and install it before installing ginaccint. For the tool -makecint to work properly it must know where Cint has its system -directory. This is usually done by exporting $CINTSYSDIR to point to -the proper place. With GiNaC you may either try to export that -variable and type +Please see to learn about Cint +and install it prior to installing ginaccint. For the interpreter- +compiler `makecint' to work properly, the Makefiles need to know where +Cint has its system directory. This is usually done by exporting +$CINTSYSDIR to point to the proper place. With GiNaC you may either +try to export that variable and type $ ./configure --with-cint -or specify it on the command line saying +or specify it directly on the command line by saying $ ./configure --with-cint=/my/path/to/cintsysdir -Good luck! - - Known to work with: | Known not to work with: ------------------------+---------------------------- - Cint 5.14.26 | Cint 5.14.29 +This variable does not have to be exported for running the installed +binary: since the actual program is started by a launcher that sets it. +Enjoy! + +Here is an overview to gives you an idea if you can expect GiNaC-cint +to compile, install and work properly: + + Cint version | how it works +--------------+---------------------------------------------------------- + < 5.14.39 | `VERBOTEN' by license (please bite your favorite lawyer) + < 5.14.60 | since GiNaC version 0.7, these do not compile any more + 5.14.62-79 | compiles fine, works well with GCC 2.95.x. GCC3 no go.