X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=INSTALL;h=e1881a352da25f57fa739eedcc963ce0ef735cc7;hp=c47aa470fa4b97de16adcaa809e8226d2e52631c;hb=8dc09f48182574d792a2ed7c37b66831d9267a6c;hpb=b000674afd72926034b870c10ae5218b0e14efc5 diff --git a/INSTALL b/INSTALL index c47aa470..e1881a35 100644 --- a/INSTALL +++ b/INSTALL @@ -1,24 +1,16 @@ 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 * . -You will also need a decent ANSI-compliant C++-compiler. We use -`post-EGCS' GCC, i.e GCC >= 2.95 for development so if you have a -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 - * . -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.) +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. INSTALLATION @@ -30,10 +22,13 @@ 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 + - Linux on x86, Alpha and Sparc using GCC 3.0.x, 3.1 and 3.2. +Known not to work with: + - GCC 2.96 or earlier because proper exception and standard library 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 +50,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 +step | GCC optimization | comment + | -O1 | -O2 | +--------------+---------+---------+---------------------------------------- +make | ~6m | ~8m | shared and static library +make check | ~8m | ~12m | largely due to compilation COMMON PROBLEMS @@ -70,10 +65,8 @@ 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. @@ -85,31 +78,12 @@ 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. - - -Working with the Cint C++ interpreter -===================================== - -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 directly on the command line by saying - $ ./configure --with-cint=/my/path/to/cintsysdir -Enjoy! - -Here is an overview to gives you an idea if you can expect GiNaCcint -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 +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.