README.md 3.14 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<!--
   |--------------------------------------------------------------------------|
   | =========                 |                                              |
   | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox        |
   |  \\    /   O peration     |                                              |
   |   \\  /    A nd           | Copyright (C) 2016 OpenCFD Ltd.              |
   |    \\/     M anipulation  |                                              |
   |--------------------------------------------------------------------------|
  -->

---

# OpenFOAM&reg; ThirdParty

OpenFOAM depends to a certain extent on third-party libraries
(*opensource only*). It also provides some interfaces to *opensource* or
*proprietary* libraries. This third-party package contains configurations and
scripts for building third-party packages. It should normally only be used in
conjunction with the corresponding OpenFOAM version.


## Configuration of Third-Party Versions

The distributed make scripts can generally be used for a variety of
versions of the third-party libraries, with the software version
specified on the command-line. For example,

    $ ./makeFFTW -help
    usage: makeFFTW [OPTION] [fftw-VERSION]

If a version is not explicitly specified on the command-line, it will
use the version as specified by the appropriate OpenFOAM
`etc/config.sh/...` entry.

This approach avoids duplicate entries for the default versions and
ensures the best overall consistency between the OpenFOAM installation
and its corresponding third-party installation.

---

## Before Starting

43
44
45
46
47
48
49
0. Review the [system requirements](http://www.openfoam.com/documentation/system-requirements.php)
   and decide on the following:
   * compiler type/version (you may need a third-party compiler installation).
   * MPI type/version.
   * ParaView type/version.
   * CMake type/version, ...
1. Adjust the OpenFOAM `etc/bashrc`, `etc/config.sh/...` or equivalent
50
   `prefs.sh` files to reflect your preferred configuration.
51
2. Source the updated OpenFOAM environment
52
53
54

---

55
56
57
58
59
60
61
## Building

Many components of ThirdParty are *optional* or are invoked
automatically as part of the top-level OpenFOAM `Allwmake`.
Nonetheless it may be necessary or useful to build various
ThirdParty components prior to building OpenFOAM itself.

62
## Build Sequence
63
64

1. `makeGcc` _or_ `makeLLVM` *(optional)*
65
66
2. `makeCmake`  *(optional)*
3. `Allwmake`
67
   - This will be automatically invoked by the top-level OpenFOAM `Allwmake`.
68
4. `makeParaView`  *(optional but highly recommended)*
69
5. Any other additional optional components
70
71


72
### Build Details
73

74
More details can be found the ThirdParty ./BUILD.md information.
75
76
77
78
79
80
81
82
83
84
85
86
87
88


<!-- Standard Footer -->
## Additional OpenFOAM Links

- [Download and installation instructions](http://www.openfoam.com/releases)
- [Documentation](http://www.openfoam.com/documentation)
- [Reporting bugs/issues (including bugs/suggestions/feature requests) in OpenFOAM+](http://www.openfoam.com/code/bug-reporting.php)
- [Collaborative and Community-based Developments](http://www.openfoam.com/services/community-projects.php)
- [Contacting OpenCFD](http://www.openfoam.com/contact)

---

Copyright 2016 OpenCFD Ltd