<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html > <head><title>Configuration options</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)"> <meta name="originator" content="TeX4ht (http://www.tug.org/tex4ht/)"> <!-- html,3 --> <meta name="src" content="userhtml.tex"> <link rel="stylesheet" type="text/css" href="userhtml.css"> </head><body > <!--l. 98--><div class="crosslinks"><p class="noindent"><span class="cmr-12">[</span><a href="userhtmlsu4.html" ><span class="cmr-12">next</span></a><span class="cmr-12">] [</span><a href="userhtmlsu2.html" ><span class="cmr-12">prev</span></a><span class="cmr-12">] [</span><a href="userhtmlsu2.html#tailuserhtmlsu2.html" ><span class="cmr-12">prev-tail</span></a><span class="cmr-12">] [</span><a href="#tailuserhtmlsu3.html"><span class="cmr-12">tail</span></a><span class="cmr-12">] [</span><a href="userhtmlse3.html#userhtmlsu3.html" ><span class="cmr-12">up</span></a><span class="cmr-12">] </span></p></div> <h4 class="subsectionHead"><span class="titlemark"><span class="cmr-12">3.3 </span></span> <a id="x10-90003.3"></a><span class="cmr-12">Configuration options</span></h4> <!--l. 100--><p class="noindent" ><span class="cmr-12">In order to build MLD2P4, the first step is to use the </span><span class="obeylines-h"><span class="verb"><span class="cmtt-12">configure</span></span></span> <span class="cmr-12">script in the main</span> <span class="cmr-12">directory to generate the necessary makefile.</span> <!--l. 104--><p class="indent" > <span class="cmr-12">As a minimal example consider the following:</span> <div class="verbatim" id="verbatim-1"> ./configure --with-psblas=PSB-INSTALL-DIR </div> <!--l. 107--><p class="nopar" > <span class="cmr-12">which assumes that the various MPI compilers and support libraries are available in</span> <span class="cmr-12">the standard directories on the system, and specifies only the PSBLAS install directory</span> <span class="cmr-12">(note that the latter directory must be specified with an </span><span class="cmti-12">absolute </span><span class="cmr-12">path). The full set of</span> <span class="cmr-12">options may be looked at by issuing the command </span><span class="obeylines-h"><span class="verb"><span class="cmtt-12">./configure</span><span class="cmtt-12"> --help</span></span></span><span class="cmr-12">, which</span> <span class="cmr-12">produces:</span> <div class="verbatim" id="verbatim-2"> ‘configure’ configures MLD2P4 2.1.1 to adapt to many kinds of systems.  <br />  <br />Usage: ./configure [OPTION]... [VAR=VALUE]...  <br />  <br />To assign environment variables (e.g., CC, CFLAGS...), specify them as  <br />VAR=VALUE.  See below for descriptions of some of the useful variables.  <br />  <br />Defaults for the options are specified in brackets.  <br />  <br />Configuration:  <br />  -h, --help              display this help and exit  <br />      --help=short        display options specific to this package  <br />      --help=recursive    display the short help of all the included packages  <br />  -V, --version           display version information and exit  <br />  -q, --quiet, --silent   do not print ‘checking ...’ messages  <br />      --cache-file=FILE   cache test results in FILE [disabled]  <br />  -C, --config-cache      alias for ‘--cache-file=config.cache’  <br />  -n, --no-create         do not create output files  <br />      --srcdir=DIR        find the sources in DIR [configure dir or ‘..’]  <br />  <br />Installation directories:  <br />  --prefix=PREFIX         install architecture-independent files in PREFIX  <br />                          [/usr/local]  <br />  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX  <br />                          [PREFIX]  <br />  <br />By default, ‘make install’ will install all the files in  <br />‘/usr/local/bin’, ‘/usr/local/lib’ etc.  You can specify  <br />an installation prefix other than ‘/usr/local’ using ‘--prefix’,  <br />for instance ‘--prefix=$HOME’.  <br />  <br />For better control, use the options below.  <br />  <br />Fine tuning of the installation directories:  <br />  --bindir=DIR            user executables [EPREFIX/bin]  <br />  --sbindir=DIR           system admin executables [EPREFIX/sbin]  <br />  --libexecdir=DIR        program executables [EPREFIX/libexec]  <br />  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]  <br />  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]  <br />  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]  <br />  --libdir=DIR            object code libraries [EPREFIX/lib]  <br />  --includedir=DIR        C header files [PREFIX/include]  <br />  --oldincludedir=DIR     C header files for non-gcc [/usr/include]  <br />  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]  <br />  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]  <br />  --infodir=DIR           info documentation [DATAROOTDIR/info]  <br />  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]  <br />  --mandir=DIR            man documentation [DATAROOTDIR/man]  <br />  --docdir=DIR            documentation root [DATAROOTDIR/doc/mld2p4]  <br />  --htmldir=DIR           html documentation [DOCDIR]  <br />  --dvidir=DIR            dvi documentation [DOCDIR]  <br />  --pdfdir=DIR            pdf documentation [DOCDIR]  <br />  --psdir=DIR             ps documentation [DOCDIR]  <br />  <br />Program names:  <br />  --program-prefix=PREFIX            prepend PREFIX to installed program names  <br />  --program-suffix=SUFFIX            append SUFFIX to installed program names  <br />  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names  <br />  <br />Optional Features:  <br />  --disable-option-checking  ignore unrecognized --enable/--with options  <br />  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)  <br />  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]  <br />  --enable-silent-rules   less verbose build output (undo: "make V=1")  <br />  --disable-silent-rules  verbose build output (undo: "make V=0")  <br />  --enable-dependency-tracking  <br />                          do not reject slow dependency extractors  <br />  --disable-dependency-tracking  <br />                          speeds up one-time build  <br />  --enable-serial         Specify whether to enable a fake mpi library to run  <br />                          in serial mode.  <br />  --enable-long-integers  Specify usage of 64 bits integers.  <br />  <br />Optional Packages:  <br />  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]  <br />  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)  <br />  --with-psblas=DIR       The install directory for PSBLAS, for example,  <br />                          --with-psblas=/opt/packages/psblas-3.5  <br />  --with-psblas-incdir=DIR  <br />                          Specify the directory for PSBLAS C includes.  <br />  --with-psblas-moddir=DIR  <br />                          Specify the directory for PSBLAS Fortran modules.  <br />  --with-psblas-libdir=DIR  <br />                          Specify the directory for PSBLAS library.  <br />  --with-ccopt            additional [CCOPT] flags to be added: will prepend  <br />                          to [CCOPT]  <br />  --with-fcopt            additional [FCOPT] flags to be added: will prepend  <br />                          to [FCOPT]  <br />  --with-libs             List additional link flags here. For example,  <br />                          --with-libs=-lspecial_system_lib or  <br />                          --with-libs=-L/path/to/libs  <br />  --with-clibs            additional [CLIBS] flags to be added: will prepend  <br />                          to [CLIBS]  <br />  --with-flibs            additional [FLIBS] flags to be added: will prepend  <br />                          to [FLIBS]  <br />  --with-library-path     additional [LIBRARYPATH] flags to be added: will  <br />                          prepend to [LIBRARYPATH]  <br />  --with-include-path     additional [INCLUDEPATH] flags to be added: will  <br />                          prepend to [INCLUDEPATH]  <br />  --with-module-path      additional [MODULE_PATH] flags to be added: will  <br />                          prepend to [MODULE_PATH]  <br />  --with-extra-libs       List additional link flags here. For example,  <br />                          --with-extra-libs=-lspecial_system_lib or  <br />                          --with-extra-libs=-L/path/to/libs  <br />  --with-blas=<lib>       use BLAS library <lib>  <br />  --with-blasdir=<dir>    search for BLAS library in <dir>  <br />  --with-lapack=<lib>     use LAPACK library <lib>  <br />  --with-mumps=LIBNAME    Specify the libname for MUMPS. Default: autodetect  <br />                          with minimum "-lmumps_common -lpord"  <br />  --with-mumpsdir=DIR     Specify the directory for MUMPS library and  <br />                          includes. Note: you will need to add auxiliary  <br />                          libraries with --extra-libs; this depends on how  <br />                          MUMPS was configured and installed, at a minimum you  <br />                          will need SCALAPACK and BLAS  <br />  --with-mumpsincdir=DIR  Specify the directory for MUMPS includes.  <br />  --with-mumpsmoddir=DIR  Specify the directory for MUMPS Fortran modules.  <br />  --with-mumpslibdir=DIR  Specify the directory for MUMPS library.  <br />  --with-umfpack=LIBNAME  Specify the library name for UMFPACK and its support  <br />                          libraries. Default: "-lumfpack -lamd"  <br />  --with-umfpackdir=DIR   Specify the directory for UMFPACK library and  <br />                          includes.  <br />  --with-umfpackincdir=DIR  <br />                          Specify the directory for UMFPACK includes.  <br />  --with-umfpacklibdir=DIR  <br />                          Specify the directory for UMFPACK library.  <br />  --with-superlu=LIBNAME  Specify the library name for SUPERLU library.  <br />                          Default: "-lsuperlu"  <br />  --with-superludir=DIR   Specify the directory for SUPERLU library and  <br />                          includes.  <br />  --with-superluincdir=DIR  <br />                          Specify the directory for SUPERLU includes.  <br />  --with-superlulibdir=DIR  <br />                          Specify the directory for SUPERLU library.  <br />  --with-superludist=LIBNAME  <br />                          Specify the libname for SUPERLUDIST library.  <br />                          Requires you also specify SuperLU. Default:  <br />                          "-lsuperlu_dist"  <br />  --with-superludistdir=DIR  <br />                          Specify the directory for SUPERLUDIST library and  <br />                          includes.  <br />  --with-superludistincdir=DIR  <br />                          Specify the directory for SUPERLUDIST includes.  <br />  --with-superludistlibdir=DIR  <br />                          Specify the directory for SUPERLUDIST library.  <br />  <br />Some influential environment variables:  <br />  FC          Fortran compiler command  <br />  FCFLAGS     Fortran compiler flags  <br />  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a  <br />              nonstandard directory <lib dir>  <br />  LIBS        libraries to pass to the linker, e.g. -l<library>  <br />  CC          C compiler command  <br />  CFLAGS      C compiler flags  <br />  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if  <br />              you have headers in a nonstandard directory <include dir>  <br />  MPICC       MPI C compiler command  <br />  MPIFC       MPI Fortran compiler command  <br />  CPP         C preprocessor  <br />  <br />Use these variables to override the choices made by ‘configure’ or to help  <br />it to find libraries and programs with nonstandard names/locations.  <br />  <br />Report bugs to <https://github.com/sfilippone/mld2p4-2/issues>. </div> <!--l. 278--><p class="nopar" > <!--l. 280--><p class="indent" > <span class="cmr-12">For instance, if a user has built and installed PSBLAS 3.5 under the </span><span class="obeylines-h"><span class="verb"><span class="cmtt-12">/opt</span></span></span> <span class="cmr-12">directory</span> <span class="cmr-12">and is using the SuiteSparse package (which includes UMFPACK), then MLD2P4</span> <span class="cmr-12">might be configured with:</span> <div class="verbatim" id="verbatim-3">  ./configure --with-psblas=/opt/psblas-3.5/ \  <br /> --with-umfpackincdir=/usr/include/suitesparse/ </div> <!--l. 287--><p class="nopar" > <span class="cmr-12">Once the configure script has completed execution, it will have generated the file</span> <span class="obeylines-h"><span class="verb"><span class="cmtt-12">Make.inc</span></span></span> <span class="cmr-12">which will then be used by all Makefiles in the directory tree; this file will be</span> <span class="cmr-12">copied in the install directory under the name </span><span class="obeylines-h"><span class="verb"><span class="cmtt-12">Make.inc.MLD2P4</span></span></span><span class="cmr-12">.</span> <!--l. 293--><p class="indent" > <span class="cmr-12">To use the MUMPS solver package, the user has to add the appropriate options to</span> <span class="cmr-12">the configure script; by default we are looking for the libraries </span><span class="obeylines-h"><span class="verb"><span class="cmtt-12">-ldmumps</span><span class="cmtt-12"> -lsmumps</span></span></span> <span class="obeylines-h"><span class="verb"><span class="cmtt-12"> -lzmumps</span><span class="cmtt-12"> -lcmumps</span><span class="cmtt-12"> -mumps_common</span><span class="cmtt-12"> -lpord</span></span></span><span class="cmr-12">. MUMPS often uses additional</span> <span class="cmr-12">packages such as ScaLAPACK, ParMETIS, SCOTCH, as well as enabling OpenMP; in</span> <span class="cmr-12">such cases it is necessary to add linker options with the </span><span class="obeylines-h"><span class="verb"><span class="cmtt-12">--with-extra-libs</span></span></span> <span class="cmr-12">configure</span> <span class="cmr-12">option.</span> <!--l. 301--><p class="indent" > <span class="cmr-12">To build the library the user will now enter</span> <div class="verbatim" id="verbatim-4"> make </div> <!--l. 304--><p class="nopar" > <span class="cmr-12">followed (optionally) by</span> <div class="verbatim" id="verbatim-5"> make install </div> <!--l. 308--><p class="nopar" > <!--l. 309--><div class="crosslinks"><p class="noindent"><span class="cmr-12">[</span><a href="userhtmlsu4.html" ><span class="cmr-12">next</span></a><span class="cmr-12">] [</span><a href="userhtmlsu2.html" ><span class="cmr-12">prev</span></a><span class="cmr-12">] [</span><a href="userhtmlsu2.html#tailuserhtmlsu2.html" ><span class="cmr-12">prev-tail</span></a><span class="cmr-12">] [</span><a href="userhtmlsu3.html" ><span class="cmr-12">front</span></a><span class="cmr-12">] [</span><a href="userhtmlse3.html#userhtmlsu3.html" ><span class="cmr-12">up</span></a><span class="cmr-12">] </span></p></div> <!--l. 309--><p class="indent" > <a id="tailuserhtmlsu3.html"></a> </body></html>