hypre/docs/autoconfig.txt
1998-12-17 19:24:40 +00:00

91 lines
3.6 KiB
Plaintext

Using Autoconfig in hypre
-------------------------
NOTE: These procedures currently only apply to the directories listed
in the `CASC_CONFIG_OUTPUT_LIST' line of the `configure.in' file.
To automatically generate machine specific makefiles, type `configure'
in the `linear_solvers' directory. The configure script is a portable
script generated by GNU Autoconf. It runs a series of tests to
determine characteristics of the machine on which it is running, and
it uses the results of the these tests to produce the machine specific
makefiles, called `Makefile', from template files called `Makefile.in'
in each directory. Once the makefiles are produced you can run make
as you would with any other makefile.
The configure script produces a file called `config.cache' which
stores some of its results. If you wish to run configure again in a
way that will get different results, you should remove `config.cache'.
This configure script primarily does the following things:
- selects a C compiler
- provides either optimization or debugging options for the C compiler
- finds the headers and libraries for MPI
The configure script has some command-line options that can give you
some control over the choices it will make. You can type
configure --help
to see the list of all of the command-line options to configure, but
the most significant options are at the bottom of the list, after the
line that reads "--enable and --with options recognized:"
--with-CC=ARG
This option allows you to choose the C compiler
you wish to use. The default compiler that
configure chooses is gcc, if it is available.
--enable-opt-debug=ARG
Choose whether you want the C compiler to have
optimization or debugging flags. For debugging,
replace `ARG' with `debug'. For optimization,
replace `ARG' with `opt'. If you want both sets
of flags, replace `ARG' with `both'. The default
is optimization
--without-MPI
This flag suppresses the use of MPI, creating
Makefiles that will compile a sequential version
of the library.
--with-mpi-include=DIR
--with-mpi-libs=LIBS
--with-mpi-lib-dirs=DIRS
These three flags are to be used if you want to
override the automatic search for MPI. If you use
one of these flags, you must use all three.
Replace `DIR' with the path of the directory that
contains mpi.h, replace `LIBS' with a list of the
stub names of all the libraries needed for MPI, and
replace `DIRS' with a list of the directory paths
containing the libraries specified by `LIBS'
NOTE: The lists `LIBS' and `DIRS' should be
space-separated and contained in quotes, e.g.
--with-mpi-libs="nsl socket mpi" and
--with-mpi-lib-dirs="/usr/lib /usr/local/mpi/lib"
--with-mpi-flags=FLAGS
Sometimes other compiler flags are needed for
certain MPI implementations to work. Replace
`FLAGS' with a space-separated list of whatever
flags are necessary. This option does not
override the automatic search for MPI. It can be
used to add to the results of the automatic search,
or it can be used along with the three previous
flags.
--with-MPICC=ARG
The automatic search for the MPI stuff is based on
a tool such as `mpicc' that configure finds in
your $PATH. If there is an implementation of MPI
that you wish to use, you can replace `ARG' with
the name of that MPI version's C compiler wrapper,
if it has one. (MPICH has mpicc, IBM MPI has
mpcc, other MPIs use other names.) configure will
then automatically find the necessary libraries
and headers.