You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: INSTALL.md
+98-74Lines changed: 98 additions & 74 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,80 +26,57 @@ Download this file as a PDF document
26
26
End-User Installation
27
27
---------------------
28
28
29
-
### Installation Script###
29
+
Most users will find it easiest and fastest to use package management software to install OpenCoarrays.
30
+
Package management options for macOS (formerly known as OS X), Windows, and Linux are described first
31
+
below. Also described below are options for installing via an OpenCoarrays installation script or
32
+
via the Sourcery Institute virtual machine.
33
+
34
+
### macOS ###
30
35
31
-
As of release 1.2.0, users might consider installing by downloading and uncompressing
32
-
a file from our [Releases] page and running the installation script in the top-level
33
-
source directory:
36
+
OS X users may use the [Homebrew] or [MacPorts] package management systems to install OpenCoarrays.
34
37
38
+
Homebrew installation steps:
35
39
```
36
-
tar xvzf OpenCoarrays-x.y.z.tar.gz
37
-
cd OpenCoarrays-x.y.z
38
-
./install.sh
40
+
brew update
41
+
brew install opencoarrays
39
42
```
40
43
41
-
where `x.y.z` should be replaced with the appropriate version numbers. For a scripted or unattended build, use
42
-
`./install.sh -y` or equivalently `./install.sh --yes-to-all`, which will assume affirmative answers
43
-
to all user prompts and will only prompt the user if an installation directory is chosen that requires
44
-
`sudo` privelenges (by passing `-i` or equivalently `--install-prefix`).
45
-
46
-
Before installing OpenCoarrays, the above bash script will attempt to detect the presence
47
-
of the default prerequisite packages: [GCC], [MPICH] , and [CMake]. For additional details, see the [Prerequisites] section. If any of the
48
-
aforementioned packages appear to be absent from the user's PATH environment variable,
49
-
the [install.sh] script will attempt to download, build, and install any missing packages
50
-
after asking permission to do so. The script has been tested on Linux and OS X. Please
51
-
submit any related problems or questions to our [Issues] page.
52
-
53
-
A complete installation should result in the creation of the following directories
54
-
inside the installation path (.e.g, inside `build` in the above example):
55
-
56
-
*`bin`: contains the compiler wrapper (`caf`), program launcher (`cafun`), and prerequisites builder (`build`)
57
-
*`mod`: contains the `opencoarrays.mod` module file for use with non-OpenCoarrays-aware compilers
58
-
*`lib`: contains the `libcaf_mpi.a` static library to which codes link for CAF support
59
-
60
-
The remainder of this document explains other options that many end users will find
61
-
simplest to obtain OpenCoarrays on OS X, Windows, or Linux without building OpenCoarrays
62
-
from its source code.
63
-
64
-
### OS X ###
65
-
66
-
OS X users might find it easiest to install OpenCoarrays using the [MacPorts]
67
-
package management system. After installing [MacPorts], type the following:
68
-
44
+
MacPorts installation steps:
69
45
```
70
46
sudo port selfupdate
71
47
sudo port upgrade outdated
72
48
sudo port install opencoarrays
73
49
```
74
-
75
-
where the `sudo` command requires administrator privileges and where the first
76
-
two steps above are required only if the [MacPorts] ports were last updated prior
77
-
to 30 September 2015, when the OpenCoarrays port was incorporated into [MacPorts].
78
-
Repeating the first two steps above will also update OpenCoarrays to the latest
79
-
release.
80
-
81
-
Please also install the `mpstats` port as follows:
82
-
50
+
where the `sudo` command requires administrator privileges. If you install using MacPorts, please
51
+
also install the `mpstats` port as follows:
83
52
```
84
53
sudo port install mpstats
85
54
```
86
-
87
-
which supports future OpenCoarrays development by providing download data the
88
-
OpenCoarrays team can use in proposals for research grants and development
89
-
contracts.
55
+
which supports future OpenCoarrays development by providing download data the OpenCoarrays team
56
+
uses in proposals for research grants and development contracts.
90
57
91
58
### Windows ###
92
59
93
-
Windows users will find it easiest to download the Lubuntu Linux virtual
94
-
machine from the [Sourcery Institute Store]. The virtual machine boots inside
95
-
the open-source [VirtualBox] virtualization package. In addition to containing
96
-
GCC 4.9, 5.2, and 6.0, MPICH, OpenMPI, and OpenCoarrays, the virtual machine
97
-
contains dozens of other open-source software packages that support software
98
-
development in modern Fortran. See the [download and installation instructions]
99
-
for a partial list of the included packages.
60
+
Windows users may run the windows-install.sh script inside the Windows Subsystem for Linux (WSL).
100
61
101
-
Alternatively, if you desire to use OpenCoarrays under Cygwin, please submit a
102
-
feature request via our [Issues] page.
62
+
Requirements:
63
+
* WSL release 14936 or later, which provides Ubuntu 16.04.
64
+
* Ubuntu 16.04 requirements:
65
+
- Windows Insider Preview and
66
+
- "Fast" updates option.
67
+
68
+
Steps:
69
+
```
70
+
do-release-upgrade
71
+
./windows-install.sh
72
+
```
73
+
where the first command above updates the default Ubuntu 14.04 to 16.04 and the second command must
74
+
be executed with the present working directory set to the top level of the OpenCoarrays source tree.
75
+
76
+
The `windows-install.sh` installation script uses Ubuntu's `apt-get` package manager to build
77
+
[GCC] 5.4.0, [CMake], and [MPICH]. Windows users who desire a newer version of GCC are welcome to
78
+
submit a request via our [Issues] page and suggest a method for updating. Previously attempted
79
+
upgrade methods are described in the discussion thread starting with [commit comment 20539810].
103
80
104
81
### Linux ###
105
82
@@ -108,15 +85,58 @@ Users of other Linux distributions who prefer not to build OpenCoarrays from sou
108
85
access OpenCoarrays via the the Lubuntu Linux virtual machine from the
109
86
[Sourcery Institute Store] after installing the version of [VirtualBox] that is suitable
110
87
for the relevant Linux distribution. Alternatively, if you desire to install using other
111
-
Linux package management software such as [yum] or [apt-get], please submit a feature
88
+
Linux package management software such as [dnf] or [apt-get], please submit a feature
112
89
request via our [Issues] page.
113
90
91
+
## Virtual machine
92
+
93
+
Users of macOS, Windows, or Linux have the option to use OpenCoarrays by installing the Lubuntu
94
+
Linux virtual machine from the [Sourcery Institute Store]. The virtual machine boots inside
95
+
the open-source [VirtualBox] virtualization package. In addition to containing [GCC], [MPICH],
96
+
and OpenCoarrays, the virtual machine contains dozens of other open-source software packages
97
+
that support modern Fortran software development. See the [download and installation instructions]
98
+
for a partial list of the included packages.
99
+
100
+
### Installation Script###
101
+
102
+
Linux and macOS users may also install OpenCoarrays by downloading and uncompressing our
103
+
[latest release] and running the installation script in the top-level source directory
104
+
(see above for the corresponding [Windows] script):
105
+
```
106
+
tar xvzf OpenCoarrays-x.y.z.tar.gz
107
+
cd OpenCoarrays-x.y.z
108
+
./install.sh
109
+
```
110
+
where `x.y.z` should be replaced with the appropriate version numbers. For a scripted or unattended build, use
111
+
`./install.sh -y` or equivalently `./install.sh --yes-to-all`, which will assume affirmative answers
112
+
to all user prompts and will only prompt the user if an installation directory is chosen that requires
113
+
`sudo` privelenges (by passing `-i` or equivalently `--install-prefix`).
114
+
115
+
Before installing OpenCoarrays, the above bash script will attempt to detect the presence of the
116
+
default prerequisite packages: [GCC], [MPICH] , and [CMake]. For additional details, see the
117
+
[Prerequisites] section. If any of the installation script cannot find the prerequisite packages,
118
+
the [install.sh] script will attempt to download, build, and install any missing packages
119
+
after asking permission to do so. The script has been tested on Linux and OS X. Please
120
+
submit any related problems or questions to our [Issues] page.
121
+
122
+
A complete installation should result in the creation of the following directories
123
+
inside the installation path (.e.g, inside `build` in the above example):
124
+
125
+
*`bin`: contains the compiler wrapper (`caf`) and program launcher (`cafun`).
126
+
*`mod`: contains the `opencoarrays.mod` module file for use with non-OpenCoarrays-aware compilers
127
+
*`lib`: contains the `libcaf_mpi.a` static library to which codes link for CAF support
128
+
129
+
114
130
Advanced Installation from Source
115
-
--------------------
131
+
---------------------------------
116
132
117
133
### Prerequisites: ###
118
134
119
-
The prerequisites below and their dependencies are recommended for the broadest coverage of CAF features. If a prerequisite is missing or outdated, the [install.sh] script will prompt the user for permission to download, compile, and install it. Before doing so, [install.sh] will verify whether that prerequisite's prerequisites are present and will recursively traverse the dependency tree until reaching an acceptable prerequisite or reaching the end of a branch.
135
+
The prerequisites below and their dependencies are recommended for the broadest coverage of CAF features.
136
+
If a prerequisite is missing or outdated, the [install.sh] script will prompt the user for permission to
137
+
download, compile, and install it. Before doing so, [install.sh] will verify whether that prerequisite's
138
+
prerequisites are present and will recursively traverse the dependency tree until reaching an acceptable
139
+
prerequisite or reaching the end of a branch.
120
140
121
141
```
122
142
opencoarrays
@@ -141,7 +161,7 @@ __As of OpenCoarrays 1.7.6, passing `FC=mpi_fortran_wrapper` and
141
161
`CC=mpi_c_wrapper` is *DEPRECATED*. Please pass `FC=/path/to/gfortran`
142
162
and `CC=/path/to/gcc`. If you are experimenting with the source to
143
163
source translation capabilities, then please point `FC` and `CC` to
144
-
your Fortran and C compilers of choice. In the case of CRAY, or a
164
+
your Fortran and C compilers of choice. In the case of Cray, or a
145
165
compiler in which MPI is *built-in* to the compiler, you still pass
146
166
the `FC` and `CC` as the Fortran and C compiler, even though MPI is
147
167
built-in.__
@@ -221,25 +241,26 @@ transfer support, uncomment the `-DSTRIDED` flag inside the [make.inc] file.
221
241
Obtaining GCC, MPICH, and CMake
222
242
-------------------------------
223
243
224
-
[GFortran Binaries] 5 binary builds are available at <https://gcc.gnu.org/wiki/GFortranBinaries>. Also,
225
-
the Lubuntu Linux virtual machine available for download in the [Sourcery Store] includes
226
-
builds of GCC 4.9, 5.2, and 6.0.
244
+
[GFortran Binaries] binary builds are available at <https://gcc.gnu.org/wiki/GFortranBinaries>.
227
245
228
246
To build all prerequisites from source, including the current development branch of GCC,
229
247
you might first try the running the provided [install.sh] script as described above in
230
-
the [Installation Script] section. Or try building each prerequisite from source as
231
-
follows:
248
+
the [Installation Script] section or try building each prerequisite from source inside
0 commit comments