source: git/MP/INSTALL @ 51e9cb5

Last change on this file since 51e9cb5 was ae6370, checked in by Olaf Bachmann <obachman@…>, 26 years ago
Mon Jun 30 17:53:17 1997 Olaf Bachmann < (Olaf Bachmann)> * INSTALL: Updated installation instructions by new options * manipulate CFLAGS only if they were not set in environment * added --with-rsh and --with-extra_cflags options Tue Jun 24 11:54:31 1997 Olaf Bachmann < (Olaf Bachmann)> * (BUILD_SUBDIRS): took out condition that default ap_int format is gmp for building MPT lib (BUILD_SUBDIRS): added some defines which are needed for --with-pari compilation git-svn-id: file:///usr/local/Singular/svn/trunk@462 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 16.3 KB
1                   MP version 1.1.2:  Multi Protocol
2                   Kent State University, Kent, OH
3                Authors:  S. Gray, N. Kajler, P. Wang
4         (C) 1993, 1994, 1995, 1996, 1997 All Rights Reserved
7                ================================
9This file contains instructions on how to install MP.  For general
10information about MP and copying information, see the file 'README'
11contained in this directory.  For comments, problems, or bugs,
12please send mail to
15Basic Installation
18The `configure' shell script in this directory attempts to guess
19correct values for various system-dependent variables used during
20compilation.  It uses those values to create `Makefile's from the
21files '' and the file 'MP/MP_Config.h' (which contains
22system-dependent definitions) from the file'MP/h/'.
23Finally, it creates a shell script `config.status' that you can run
24to recreate the current configuration, a file `config.cache' that
25saves the results of its tests to speed up reconfiguring, and a file
26`config.log' containing output from `configure' (useful mainly for
27debugging `configure').
29The file `' is used to create `configure' by a program
30called `autoconf'.  You only need `' if you want to change
31it or regenerate `configure' using a newer version of `autoconf'.
33The simplest way to install MP is:
35  1. `cd' to the directory containing the MP's source code and type
36     `./configure' to configure the package for your system.  If you're
37     using `csh' on an old version of System V, you might need to type
38     `sh ./configure' to prevent `csh' from trying to execute
39     `configure' itself.
41     Running `configure' takes a while.  While running, it prints some
42     messages telling which features it is checking for.
44  2. Type `make install' to compile and install the gmp, MP, and MPT
45     libraries and header files. The libraries will be installed in
46     ./lib/<ARCH> where <ARCH> is an architecture-specific identifier
47     (e.g., SUN4, SGI5).  Similarly, executables are installed in
48     ./bin/<ARCH>.  You can customize what is built and where libraries,
49     header files, and executables are installed by giving 'configure'
50     appropriate options (see below). NOTE: If you do not have the header
51     file 'gmp.h' installed in a standard location on your system, then
52     a './configure' followed by a simple 'make' command will fail. You
53     need to do './configure --enable-gmp' followed by 'make install'.
55  3. You can remove the program binaries and object files from the
56     source code directory by typing `make clean'.  To also remove the
57     files that `configure' created, type `make distclean'.  There is
58     a `make maintainer-clean' target, but that is intended mainly for
59     the package's developers.  If you use it, you may have to install
60     all sorts of other programs in order to regenerate files that came
61     with the distribution.
63  4. To remake the library for a different architecture, login to the
64     target machine and change directories to the MP source directory.
65     You must remove the library object files and create new Makefiles.
66     To do this, simply do a `make clean' in the top-level MP directory,
67     followed by `rm config.cache' to remove the cache file created by
68     configure.  Finally, rerun configure with the same options you gave
69     it on other machines followed by a `make' or `make install'.
71  5. Other make targets are:
72     'MP','libMP.a'   : Creates the MP library only.
73     'MPT','libMPT.a' : Creates the MPT library only.
74     'examples'       : Builds MP implementation examples.
75     'mpviewer'       : Builds the mpviewer.
76     'mp-pvm3'        : Builds an example mp-pvm implementation.
77     'dist'      : Creates a distribution of all source files of MP.
78     'TAGS'      : Creates/updates a tags table for MP's source files.
79     'uninstall' : Deletes all installed files that the 'install'
80                   target created (the library, header, info files)
82Compilers and Options
85You need an ANSI-C compiler for compiling MP. We recommend that you
86use the GNU C/C++ (gcc) compiler. If you have gcc installed on your
87system, configure will automatically find and use it for building
88MP. Otherwise, configure will try to find another ANSI-C compiler. To
89explicitly use an alternative compiler, or to set some unusual options
90for compilation or linking that the `configure' script does not know
91about, you can give `configure' initial values for variables by
92setting them in the environment.  Using a Bourne-compatible shell,
93you can do that on the command line like this:
95           CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
97           CXX=CC CXXFLAGS=+O3 LIBS=-liostream ./configure
99Or on systems that have the `env' program, you can do it like this:
101     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
103Furthermore, by giving configure the `--with-extra_cflags=cflgas'
104option, adds cflags to the flags given to your compiler. This is
105useful when you want to rely on configure to find out some standard
106CFLAGS, but nevertheless want to add some specific flags (like -fpic
107for gneration of position-independent code).
110Installation Names
113By default, `make install' will install the libraries in ./lib/$ARCH
114where $ARCH is an architecture-dpendent prefix (generated by the
115program pvmgetarch contained in this distribution), and
116headers in ./include. You can specify an installation prefix other
117than the current directory by giving `configure' the option
118`--prefix=PATH'. You can specify an alternative directory where the
119libraries are installed by giving configure the option
120`--libdir=PATH'. For the header files, use '--includedir=PATH'. Make
121sure that PATH is an _absolute_ (_not_ a relative) pathname.
124Optional Features
127MP's configure script pays attention to the following:
129`--disable-PACKAGE' option where PACKAGE can be:
131  'MPT' : Do not build the MPT (MP Tree) library and header files. MPT
132          is a library for reading/manipulating memory representations
133          of MP trees. By default MPT is built with MP and, on
134          installation, the files MPT.h and libMPT.a are installed in
135          the specified directories.
137  'gmp' : Do not build the GNU Multiple Precision (GMP) library and
138          header file. GMP is a library for multiple precision integer
139          and floating point arithmetic. Unless the option
140          --without-gmp is given to configure (see below), building MP
141          requires that the header file gmp.h has been installed
142          _before_ the MP library is built. By default, the GMP
143          library is installed before the MP library is built and on
144          installation of GMP, the files gmp.h and libgmp.a are
145          installed in the specified directories.
148`--enable-PACKAGE' option where PACKAGE can be:
150  'examples' : The distribution comes with some example implementations
151               contained in the directory 'examples'. By default, the
152               examples are not built when MP is built. Use this option
153               to build the examples when MP is built. NOTE: Make sure
154               that MP is installed before the examples are built. Also
155               see the README file contained in the 'examples' directory.
157  'mpviewer': The distribution comes with an mpviewer implementation
158              contained in the directory 'mpviewer'. By default, the
159              mpviewer is not built when MP is built. Use this option
160              to build the mpviewer when MP is built. NOTE: Make sure
161              that MP is installed before the mpviewer is built.  Also
162              see the README file contained in the 'mpviewer' directory.
164  'mppvm' : The distribution comes with some pvm example implementations
165            (demonstrating the use of the PVM transport device) contained
166            in the directory 'mp-pvm3'. By default, the pvm examples are
167            not built when MP is built. Use this option to build the pvm
168            examples when MP is built. NOTE: Make sure that MP is installed
169            before the examples are built. Also see the README file in the
170            'mp-pvm3' directory.  If the pvm include files and libraries are
171            not in standard places, you must be sure the PVM_ARCH and PVM_ROOT
172            are set.  Note also that if you use this option, you must also
173            use the `--with-pvm' option (see below).
176`--without-PACKAGE' option where PACKAGE can be:
178  'gmp' : Build MP _without_ Put/Get routines for gmp numbers. By
179          default, MP is built with routines to Put and Get gmp
180          numbers. However, this requires the header file gmp.h to be
181          installed. Use this option if you do not have or do not want
182          to install this header file or have these routines included
183          in the library.  Note that this option is different from
184          --disable-gmp, which indicates whether or not the gmp
185          library is to be built.  The --without option specifies that
186          MP will not build routines for putting and getting gmp
187          numbers.
190`--with-PACKAGE' option where PACKAGE can be:
192  'pari'  : MP comes with routines which Put/Get (arbitrary precision)
193            integers in the pari format. By default, MP is built
194            without these routines. NOTE: You need to have the header
195            file 'genpari.h' installed on your system to build MP
196            with the pari routines and you need to link your
197            application with the pari library.
199  'saclib': MP comes with routines which Put/Get (arbitrary precision)
200            integers in the saclib format. By default, MP is built
201            without these routines. NOTE: You need to have the header
202            file 'saclib.h' and 'gmp.h' installed on your system to
203            build MP with the saclib routines and you need to link
204            your application with the saclib and gmp libraries.
206  'tb'    : MP comes with a ToolBus device interface implementation. 
207            By default, MP is built without this device. NOTE: You
208            need to have the header file 'TB.h' installed on your
209            system to build MP with the ToolBus device and you need
210            to link your application with the ToolBus library.
212  'pvm'   : MP comes with a Pvm3 device interface implementation. By
213            default, MP is built without this device. NOTE: You need
214            to have the header  file 'pvm3' installed on your system
215            to build MP with the Pvm3 device and you need to link your
216            application with the Pvm3 library.
218  'debug' : The libraries are built with debug options and logging of
219            MP communications turned on.
221'--with-rsh=COMMAND' option where COMMAND is the name of a remote
222shell command. MP uses this command to remotely launch an
223application. If this option is not given then configure searches for
224the commands remsh, rsh, ssh (in that order).
225if the
227`--with-default_apint=PACKAGE' option where PACKAGE can be:
229  'gmp'   : The gmp Put/Get routines are used as default routines to
230            Put/Get arbitrary precision integers (default).  Requires
231            the header 'gmp.h' to be installed.
232  'pari'  : The pari Put/Get routines are used as default routines to
233            Put/Get  arbitrary precision integers. Requires the header
234            'genpari.h' to be installed.
235  'saclib': The saclib Put/Get routines are used as default routines to
236            Put/Get  arbitrary precision integers. Requires the headers
237            'saclib.h' and 'gmp.h' to be installed.
238  'none'  : Dummy routines are used as default routines to Put/Get
239            arbitrary precision integers which, when used, always
240            return an error.
243`--with-default_apreal=PACKAGE' option where PACKAGE can be:
245  'gmp'   : The gmp Put/Get routines are used as default routines to
246            Put/Get arbitrary precision reals (default).  Requires the
247            header 'gmp.h' to be installed.
248  'none'  : Dummy routines are used as default routines to Put/Get
249            arbitrary precision reals which, when used, always
250            return an error.
253By default, configure searches through the given includedir and the
254system's default include directories for header files, and through the
255given libdir and through the system's default library directory for
256library files. If one of the requirements for a PACKAGE is not met,
257configure prints a warning message and builds MP without the
258respective PACKAGE, disabling its functionality.
261System Requirements
264The following requirements have to be met by your system, so that you
265can build MP:
266  1. The condition (sizeof(void*) == 4) has to be true.
267  2. The standard C headers and libraries have to be installed.
270Operation Controls
273   `configure' recognizes the following options to control how it
277  --cache-file=FILE       cache test results in FILE
278  --help                  print this message
279  --no-create             do not create output files
280  --quiet, --silent       do not print `checking...' messages
281  --version               print the version of autoconf that created configure
282Directory and file names:
283  --prefix=PREFIX         install architecture-independent files in PREFIX
284                          [/mnt/amd/users/urmel/singular/obachman/Singular/MP]
285  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
286                          [same as prefix]
287  --bindir=DIR            user executables in DIR [EPREFIX/bin]
288  --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin]
289  --libexecdir=DIR        program executables in DIR [EPREFIX/libexec]
290  --datadir=DIR           read-only architecture-independent data in DIR
291                          [PREFIX/share]
292  --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc]
293  --sharedstatedir=DIR    modifiable architecture-independent data in DIR
294                          [PREFIX/com]
295  --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var]
296  --libdir=DIR            object code libraries in DIR [EPREFIX/lib]
297  --includedir=DIR        C header files in DIR [PREFIX/include]
298  --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include]
299  --infodir=DIR           info documentation in DIR [PREFIX/info]
300  --mandir=DIR            man documentation in DIR [PREFIX/man]
301  --srcdir=DIR            find the sources in DIR [configure dir or ..]
302  --program-prefix=PREFIX prepend PREFIX to installed program names
303  --program-suffix=SUFFIX append SUFFIX to installed program names
304  --program-transform-name=PROGRAM
305                          run sed PROGRAM on installed program names
306Host type:
307  --build=BUILD           configure for building on BUILD [BUILD=HOST]
308  --host=HOST             configure for HOST [guessed]
309  --target=TARGET         configure for TARGET [TARGET=HOST]
310Features and packages:
311  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
312  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
313  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
314  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
315  --x-includes=DIR        X include files are in DIR
316  --x-libraries=DIR       X library files are in DIR
317--enable and --with options recognized:
318   --disable-MPT           disable building of MPT library
319   --disable-gmp           configure and build without gmp library
320   --enable-example        enable building of example programs
321   --enable-mpviewer       enable building of mpviewer program
322   --enable-mppvm          enable building of mppvm routines
323   --with-default_apint=PACKAGE    use PACKAGE as MP's default ApInt format
324                           where PACKAGE can be: gmp (default), pari,
325                           saclib, none
326   --with-default_apreal=PACKAGE   use PACKAGE as MP's default ApReal format
327                           where PACKAGE can be: gmp (default), none
328   --without-gmp           build without gmp ApNumber routines
329   --with-pari             build with pari ApInt routines
330   --with-saclib           build with saclib ApInt routines
331   --with-tb               build with Toolbus device interface
332   --with-pvm              build with Pvm saclib device interface
333   --with-debug            build with debug options and logging
334   --with-extra_cflags=cflags   build with 'cflags' appended to
335                                 CFLAGS given to the compiler
336  --with-rsh=command       use 'command' as remote shell command
Note: See TracBrowser for help on using the repository browser.