From f8ce0585b3482976c7d78633c465d68c343a5cbd Mon Sep 17 00:00:00 2001 From: bangerth Date: Thu, 1 Nov 2012 13:42:28 +0000 Subject: [PATCH] Write some more. git-svn-id: https://svn.dealii.org/branches/branch_cmake@27287 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/doc/readme.html | 216 ++++++++++++++++++++-------------------- 1 file changed, 106 insertions(+), 110 deletions(-) diff --git a/deal.II/doc/readme.html b/deal.II/doc/readme.html index b322990ca8..1d86ca4a97 100644 --- a/deal.II/doc/readme.html +++ b/deal.II/doc/readme.html @@ -231,6 +231,10 @@ more simultaneous build processes (assuming you have that many processor cores) will greatly accelerate building the library. +
  • If you do not intend to modify the deal.II + sources and recompile things, then you can remove + the build/ directory after the last step. +
  • The deal.II cmake system can accept a significant number of configuration parameters. See the discussion below. @@ -289,72 +293,43 @@

    Configuration options

    +

    + deal.II has a large number of optional interfaces to + other libraries. By default, cmake will enable interfaces + to all external libraries it can find in default paths, but this + behavior can all be selected using command line switches to the initial + call to cmake. +

    Selecting optional behavior

    - You can give several flags to ./configure:

    - ./configure stores the paths to some + cmake stores the paths to some programs, such as the compilers or the Perl interpreter. The compiler which will be used when compiling the library (or your own application) is therefore selected at the time of @@ -375,14 +350,87 @@

    Optional interfaces to other software packages

    -

    deal.II comes with built-in support for a - number of external software packages. These packages are - sometimes detected automatically, sometimes they must be enabled explicitly - during configuration by adding the option --with-package. - Supported software packages are (the following list contains - trademarks belonging to their owners): +

    + When configuring interfacing to external libraries, + the cmake script by default tries to find any of these + libraries in a number of standard locations on your file system. For + optional interfaces, it gives up if they are not there and + deal.II will be built without them. However, there + are three interfaces that we need to have: to BOOST, UMFPACK and + the Threading Building Blocks. If they are not found in places + like /usr/ then cmake will resort to versions + of these libraries that we provide bundled as part of the + deal.II tar files. +

    + +

    + The following paragraphs describe how the interfaces to the various + packages deal.II interacts with can be configured.

    +
    + +
    PETSc
    +
    +

    + PETSc is a + library that supports parallel linear algebra and many other things. + To interface with it, add -DPETSC_DIR=/path/to/petsc + -DPETSC_ARCH=architecture to the argument list + for cmake. The values for these arguments must be the + same as those specified when building PETSc. Alternatively, you can + also set environment variables PETSC_DIR, PETSC_ARCH + and cmake will pick them up. +

    + +

    + To disable the PETSc interfaces in cases where cmake + automatically finds it, use -DDEAL_II_WITH_PETSC=OFF + More information on configuring and building PETSC can be + found here. +

    +
    + + +
    SLEPc
    +
    +

    + SLEPc is + a library for eigenvalue computations that builds on PETSc. Its + configuration works just like that for PETSc, except that the + variable to set is SLEPC_DIR (it uses the same + architecture as specified in PETSC_ARCH). + For the interface with SLEPc to work, deal.II's + interface to PETSc must also be configured correctly (see above). +

    +
    + + +
    Trilinos
    +
    +

    + Trilinos is a + library for parallel linear algebra and all sorts of other things as + well. + To interface with it, + add -DTRILINOS_DIR=/path/to/trilinos to the argument + list for cmake. Alternatively, you can + also set an environment variable TRILINOS_DIR + and cmake will pick up this path. +

    + +

    + To disable the Trilinos interfaces in cases where cmake + automatically finds it, use -DDEAL_II_WITH_PETSC=OFF + More details about compatibility and + configuration can be found here. +

    +
    +
    + +OLD TEXT OLD TEXT OLD TEXT
    TECPLOT
    Autodetected if one of the variables $TECHOME, @@ -416,58 +464,6 @@ Timothy A. Davis.
    - -
    Petsc
    -
    -

    - deal.II can interface to - the PETSc library. The simplest way to do so is to - set the PETSC_DIR and PETSC_ARCH - environment variables. More information and configuration - options can be found by issuing ./configure --help - at the command line, or, here. -

    - -

    - (deal.II) version 7.2 (and higher) support - PETSc 3.x.x only; earlier releases are no longer supported. -

    -
    - - -
    Slepc
    -
    -

    - deal.II can also interface to - the SLEPc library. The way to do it is to set - the SLEPC_DIR environment variable by - passing --with-slepc=/path/to/slepc - to deal.II's ./configure script. - The use of SLEPc is optional, however, for the interface with - SLEPc to work at all, deal.II's interface to - PETSc must also be configured correctly (see the notes above on - how to do this). -

    -
    - - -
    Trilinos
    -
    -

    - deal.II can also interface - to Trilinos. The - simplest way to use these interfaces is to - pass --with-trilinos=/path/to/trilinos - to deal.II's ./configure script. Note - that not all versions of Trilinos are compatible - with deal.II. More details about compatibility and - configuration can be found here. -

    -
    Metis
    -- 2.39.5