X-Git-Url: https://ginac.de/CLN/cln.git//cln.git?a=blobdiff_plain;ds=sidebyside;f=INSTALL;h=c61aa918f6a2d608ad8de031aa5a1f80cfbdbe33;hb=HEAD;hp=f0ccf99f0fc1c7cf898230bb02b9c840ad2e6ca7;hpb=56036094b148a45fd95f1a4618413475c793058c;p=cln.git diff --git a/INSTALL b/INSTALL index f0ccf99..c61aa91 100644 --- a/INSTALL +++ b/INSTALL @@ -1,41 +1,94 @@ -Installation: +Prerequisites. ============= -As with any autoconfiguring GNU software, installation is as easy as this: +C++11-compliant C++ compiler. GNU C++ compiler (version >= 4.8.1) is recommend. +Non-GNU compilers might not work at the moment. + +GNU multiprecision library (http://gmplib.org), version > 4.0. + +[Optional] To build CLN documentation texinfo and TeX are necessary. + +If you install CLN from git, you also need + +git itself (http://git-scm.com), version >= 1.5.0 +GNU autoconf (http://www.gnu.org/software/autoconf), version >= 2.63 +GNU libtool (http://www.gnu.org/software/libtool), version >= 1.5 +GNU automake (http://www.gnu.org/software/automake), version >= 1.11 + +Installation from a source .tar.bz2 distribution. +================================================ $ ./configure $ make $ make check -$ make install +[ become root if necessary ] +# make install + +To build the manual in PDF, HTML, or PostScript formats, use one of + +$ make pdf +$ make html +$ make ps + +To compile and run CLN's test suite and check whether the library was +compiled correctly you can use + +$ make check + +The "configure" script can be given a number of options to enable and +disable various features. Most useful ones are: + +--prefix=DIR + +Install CLN into the directory DIR (default: /usr/local). + +--with-gmp -You need GNU make. On HP-UX, you also need GNU sed. +Use GNU multiprecision library (default: yes, if available) -Known to work with: - - Linux/x86, gcc-2.7.0, gcc-2.7.2, gcc-2.8.0, egcs-1.1, gcc-2.95 - - Solaris 2.4 (sparc), gcc-2.7.0, gcc-2.7.2, egcs-1.1, gcc-2.95 - - OSF/1 V4.0 (alpha), egcs-1.1, gcc-2.95 - - Irix 5.3, CC 4 +--disable-static -The "make" step takes about 4 hours, on a 486 DX / 33 MHz / 8 MB. +Don't build static version of CLN library. This option is useful if +want to reduce the build time (and you don't need the static library). -On Linux, g++ needs 15 MB to compile the tests. So better have -17 MB swap space and 1 MB room in $TMPDIR. +For a complete list, run: -If you use gcc and g++ version 2.7.x, don't add -O2 to the CXXFLAGS, because -"g++ -O" generates better code for libcln.a than "g++ -O2". +$ ./configure --help -If you use g++ version 2.8.x or egcs-2.91.x (a.k.a. egcs-1.1) or gcc-2.95.x, -I recommend adding "-fno-exceptions" to the CXXFLAGS. This will likely -generate better code. -If you use g++ version egcs-2.91.x (egcs-1.1) or gcc-2.95.x on Sparc, add -either "-O", "-O1" or "-O2 -fno-schedule-insns" to the CXXFLAGS. With full -"-O2", g++ miscompiles the division routines. Also, if you have g++ version -egcs-1.1.1 or older on Sparc, you must specify --disable-shared because g++ -would miscompile parts of the library. +Installation from git. +===================== + +1. Download the code. + +Initial download: + +$ git clone git://www.ginac.de/cln.git + +Later on you can update your copy with + +$ git pull + +2. Make sure all required software is installed. This is *really* +important step. If some package is missing, the ‘configure’ script might +be misgenerated, + +3. Run + +$ ./autogen.sh + +to generate the ‘configure’ script, and proceed in a standard way, i.e. + +$ ./configure +$ make +[become root if necessary] +# make install + +On some platforms (arm, hppa, sparc), problems with the assembler routines +have been reported. It may be best to add "-DNO_ASM" to CPPFLAGS before +configuring: -On MIPS (SGI Irix 6), pass option "--without-gmp" to configure. gmp does -not work when compiled in "n32" binary format on Irix. +$ ./configure CPPFLAGS=-DNO_ASM More detailed installation instructions can be found in the documentation, in the doc/ directory.