From 38e03cb00e07aa13d10ba75f79a5fee593b6f2cb Mon Sep 17 00:00:00 2001 From: Richard Kreckel Date: Mon, 2 Nov 2015 00:00:48 +0100 Subject: [PATCH 1/1] Update documentation of prerequisites. --- INSTALL | 14 +++++--------- INSTALL.CMake | 6 +++--- doc/tutorial/ginac.texi | 7 +++---- ginac/power.cpp | 2 +- 4 files changed, 12 insertions(+), 17 deletions(-) diff --git a/INSTALL b/INSTALL index 4d0cf135..e3fdb7bf 100644 --- a/INSTALL +++ b/INSTALL @@ -4,8 +4,8 @@ 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.4. If you have a +You will also need a decent ISO C++-11 compiler. We recommend the C++ +compiler from the GNU compiler collection, GCC >= 4.9. 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. @@ -20,16 +20,12 @@ TeX are necessary. Known to work with: - 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, 4.6, and 4.9 - - Clang 2.8 - - Windows on x86 using GCC 3.4 (MinGW) + - GCC 4.9, 5.1, and 5.2 + - Clang 3.5.0 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. + - GCC < 4.6.0 due to missing C++-11 support If you install from git, you also need GNU autoconf (>=2.59), automake (>=1.8), libtool (>= 1.5), python (>= 2.5), bison (>= 2.3), flex (>= 2.5.33) to be installed. diff --git a/INSTALL.CMake b/INSTALL.CMake index 1ea525f6..292f0fb8 100644 --- a/INSTALL.CMake +++ b/INSTALL.CMake @@ -1,7 +1,7 @@ PREREQUISITES ============= -1. A decent ANSI-compliant C++ compiler. GCC (version >= 4.4) is recommended. +1. A decent ISO C++-11 compiler. GCC (version >= 4.9) is recommended. 2. CLN library (http://www.ginac.de/CLN), version >= 1.2.2 3. CMake, version >= 2.8 (version 2.6.x might work too). 4. Python, version >= 2.6 @@ -22,7 +22,7 @@ To install from a source distribution: 1) Unpack the tarball - $ tar xaf GiNaC-x.y.z.tar.bz2 + $ tar xaf ginac-x.y.z.tar.bz2 2) Create a build directory @@ -31,7 +31,7 @@ To install from a source distribution: 3) Run CMake to generate Makefile's $ cd ginac_build - $ cmake ../GiNaC-x.y.z + $ cmake ../ginac-x.y.z 4) Actually build GiNaC diff --git a/doc/tutorial/ginac.texi b/doc/tutorial/ginac.texi index 51220954..dbbf2359 100644 --- a/doc/tutorial/ginac.texi +++ b/doc/tutorial/ginac.texi @@ -476,7 +476,7 @@ installation. In order to install GiNaC on your system, some prerequisites need to be met. First of all, you need to have a C++-compiler adhering to the -ANSI-standard @cite{ISO/IEC 14882:1998(E)}. We used GCC for development +ISO standard @cite{ISO/IEC 14882:2011(E)}. We used GCC for development so if you have a different compiler you are on your own. For the configuration to succeed you need a Posix compliant shell installed in @file{/bin/sh}, GNU @command{bash} is fine. The pkg-config utility is @@ -8487,8 +8487,7 @@ really believe that you need to use a different compiler. We have occasionally used other compilers and may be able to give you advice.} GiNaC uses recent language features like explicit constructors, mutable members, RTTI, @code{dynamic_cast}s and STL, so ANSI compliance is meant -literally. Recent GCC versions starting at 2.95.3, although itself not -yet ANSI compliant, support all needed features. +literally. @end itemize @@ -8909,7 +8908,7 @@ $ make install @itemize @minus{} @item -@cite{ISO/IEC 14882:1998: Programming Languages: C++} +@cite{ISO/IEC 14882:2011: Programming Languages: C++} @item @cite{CLN: A Class Library for Numbers}, @email{haible@@ilog.fr, Bruno Haible} diff --git a/ginac/power.cpp b/ginac/power.cpp index 72806768..2106b511 100644 --- a/ginac/power.cpp +++ b/ginac/power.cpp @@ -139,7 +139,7 @@ void power::do_print_latex(const print_latex & c, unsigned level) const static void print_sym_pow(const print_context & c, const symbol &x, int exp) { // Optimal output of integer powers of symbols to aid compiler CSE. - // C.f. ISO/IEC 14882:1998, section 1.9 [intro execution], paragraph 15 + // C.f. ISO/IEC 14882:2011, section 1.9 [intro execution], paragraph 15 // to learn why such a parenthesation is really necessary. if (exp == 1) { x.print(c); -- 2.44.0