X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=INSTALL;h=551b5995236ddb6fea8a433f0e0e17d1d30a2591;hp=c47aa470fa4b97de16adcaa809e8226d2e52631c;hb=4c347efb39a3a53ff1e814227e513f6b31a43c44;hpb=b000674afd72926034b870c10ae5218b0e14efc5 diff --git a/INSTALL b/INSTALL index c47aa470..551b5995 100644 --- a/INSTALL +++ b/INSTALL @@ -1,7 +1,7 @@ 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,9 +12,8 @@ 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 @@ -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.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,13 +56,13 @@ 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 | ~3m | ~3m | ~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 @@ -70,12 +71,11 @@ 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 ---------------------------- @@ -85,10 +85,7 @@ 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. After that it should work fine. - -If you want to build a completely static ginsh and your compiler still -complains about unresolved objects try linking with libncurses, too. +and compile it yourself. Working with the Cint C++ interpreter @@ -103,13 +100,17 @@ try to export that variable and type $ ./configure --with-cint or specify it directly on the command line by saying $ ./configure --with-cint=/my/path/to/cintsysdir +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 GiNaCcint +Here is an overview to gives you an idea if you can expect GiNaC-cint to compile, install and work properly: - Cint version | is known to work with | is known not to work with ---------------+---------------------------+----------------------------- - < 5.14.37 | | (incompatible with GiNaC) - 5.14.38 | egcs 1.1.1 (problematic) | gcc.2.95.2 - 5.14.39 | egcs 1.1.1, gcc.2.95.2 | gcc <= 2.7.2.3 + 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-72 | compiles fine, works well with GCC 2.95.x. GCC3 no go. + 5.14.74 | requires defining -DG__LONGBUF in SYSMACRO and OTHMACRO. + 5.14.75-76 | compiles fine, works well with GCC 2.95.x. GCC3 no go.