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
Most users will find it easiest and fastest to use package management software to install OpenCoarrays.
31
+
Package management options for macOS (formerly known as OS X), Windows, and Linux are described first
32
+
below. Also described below are options for installing via the Sourcery Institute virtual machine or
33
+
the OpenCoarrays installation script.
34
+
35
+
### macOS ###
30
36
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:
37
+
OS X users may use the [Homebrew] or [MacPorts] package management systems to install OpenCoarrays.
38
+
We recommend [Homebrew].
34
39
40
+
Homebrew installation steps:
35
41
```
36
-
tar xvzf OpenCoarrays-x.y.z.tar.gz
37
-
cd OpenCoarrays-x.y.z
38
-
./install.sh
42
+
brew update
43
+
brew install opencoarrays
39
44
```
40
45
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
-
46
+
MacPorts installation steps:
69
47
```
70
48
sudo port selfupdate
71
49
sudo port upgrade outdated
72
50
sudo port install opencoarrays
73
51
```
52
+
where the `sudo` command requires administrator privileges. If you install using MacPorts, please
53
+
also install the `mpstats` port as follows:
54
+
```
55
+
sudo port install mpstats
56
+
```
57
+
which supports future OpenCoarrays development by providing download data the OpenCoarrays team
58
+
uses in proposals for research grants and development contracts.
59
+
60
+
### Windows ###
74
61
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.
62
+
Windows users may run the windows-install.sh script inside the Windows Subsystem for Linux (WSL).
80
63
81
-
Please also install the `mpstats` port as follows:
64
+
Requirements:
65
+
* WSL release 14936 or later,
66
+
* Windows Insider Preview, and
67
+
* "Fast" updates option.
82
68
69
+
Steps:
83
70
```
84
-
sudo port install mpstats
71
+
do-release-upgrade
72
+
./windows-install.sh
85
73
```
74
+
where the first command above updates the default Ubuntu 14.04 to 16.04 and the second command must
75
+
be executed with the present working directory set to the top level of the OpenCoarrays source tree.
86
76
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.
77
+
The `windows-install.sh` installation script uses Ubuntu's `apt-get` package manager to build
78
+
[GCC] 5.4.0, [CMake], and [MPICH]. Windows users who desire a newer version of GCC are welcome to
79
+
submit a request via our [Issues] page and suggest a method for updating. Previously attempted
80
+
upgrade methods are described in the discussion thread starting with [commit comment 20539810].
90
81
91
-
### Windows ###
82
+
### Linux ###
83
+
84
+
The [Arch Linux] distribution provides an [aur package] for installing OpenCoarrays. Users of
85
+
other Linux distributions may install the [Virtual machine] or use the [Installation Script].
86
+
Alternatively, if you desire to install using other Linux package Linux package management
87
+
software such as [dnf] or [apt-get], please submit a feature request via our [Issues] page.
88
+
89
+
## Virtual machine ##
92
90
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]
91
+
Users of macOS, Windows, or Linux have the option to use OpenCoarrays by installing the Lubuntu
92
+
Linux virtual machine from the [Sourcery Institute Store]. The virtual machine boots inside
93
+
the open-source [VirtualBox] virtualization package. In addition to containing [GCC], [MPICH],
94
+
and OpenCoarrays, the virtual machine contains dozens of other open-source software packages
95
+
that support modern Fortran software development. See the [download and installation instructions]
99
96
for a partial list of the included packages.
100
97
101
-
Alternatively, if you desire to use OpenCoarrays under Cygwin, please submit a
102
-
feature request via our [Issues] page.
98
+
## Installation Script ##
103
99
104
-
### Linux ###
100
+
If the above package management or virtualization options are infeasible or unavailable,
101
+
Linux and macOS users may also install OpenCoarrays by downloading and uncompressing our
102
+
[latest release] and running our installation script in the top-level OpenCoarrays source
103
+
directory (see above for the corresponding [Windows] script):
104
+
```
105
+
tar xvzf OpenCoarrays-x.y.z.tar.gz
106
+
cd OpenCoarrays-x.y.z
107
+
./install.sh
108
+
```
109
+
where `x.y.z` should be replaced with the appropriate version numbers. For a scripted or unattended build, use
110
+
`./install.sh -y` or equivalently `./install.sh --yes-to-all`, which will assume affirmative answers
111
+
to all user prompts and will only prompt the user if an installation directory is chosen that requires
112
+
`sudo` privelenges (by passing `-i` or equivalently `--install-prefix`).
113
+
114
+
Before installing OpenCoarrays, the above bash script will attempt to detect the presence of the
115
+
default prerequisite packages: [GCC], [MPICH] , and [CMake]. For additional details, see the
116
+
[Prerequisites] section. If any of the installation script cannot find the prerequisite packages,
117
+
the [install.sh] script will attempt to download, build, and install any missing packages
118
+
after asking permission to do so. The script has been tested on Linux and OS X. Please
119
+
submit any related problems or questions to our [Issues] page.
120
+
121
+
A complete installation should result in the creation of the following directories
122
+
inside the installation path (.e.g, inside `build` in the above example):
123
+
124
+
*`bin`: contains the compiler wrapper (`caf`) and program launcher (`cafun`).
125
+
*`mod`: contains the `opencoarrays.mod` module file for use with non-OpenCoarrays-aware compilers
126
+
*`lib`: contains the `libcaf_mpi.a` static library to which codes link for CAF support
105
127
106
-
The [Arch Linux] distribution provides an [aur package] for installing OpenCoarrays.
107
-
Users of other Linux distributions who prefer not to build OpenCoarrays from source might
108
-
access OpenCoarrays via the the Lubuntu Linux virtual machine from the
109
-
[Sourcery Institute Store] after installing the version of [VirtualBox] that is suitable
110
-
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
112
-
request via our [Issues] page.
113
128
114
129
Advanced Installation from Source
115
-
--------------------
130
+
---------------------------------
116
131
117
132
### Prerequisites: ###
118
133
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.
134
+
The prerequisites below and their dependencies are recommended for the broadest coverage of CAF features.
135
+
If a prerequisite is missing or outdated, the [install.sh] script will prompt the user for permission to
136
+
download, compile, and install it. Before doing so, [install.sh] will verify whether that prerequisite's
137
+
prerequisites are present and will recursively traverse the dependency tree until reaching an acceptable
138
+
prerequisite or reaching the end of a branch.
120
139
121
140
```
122
141
opencoarrays
@@ -133,15 +152,15 @@ opencoarrays
133
152
134
153
If using the advanced [CMake] or [Make] builds detailed below, please ensure that these dependencies are met before attempting to build and install OpenCoarrays.
135
154
136
-
### CMake ###
155
+
### CMake scripts###
137
156
138
157
#### N.B.: ####
139
158
140
159
__As of OpenCoarrays 1.7.6, passing `FC=mpi_fortran_wrapper` and
141
160
`CC=mpi_c_wrapper` is *DEPRECATED*. Please pass `FC=/path/to/gfortran`
142
161
and `CC=/path/to/gcc`. If you are experimenting with the source to
143
162
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
163
+
your Fortran and C compilers of choice. In the case of Cray, or a
145
164
compiler in which MPI is *built-in* to the compiler, you still pass
146
165
the `FC` and `CC` as the Fortran and C compiler, even though MPI is
147
166
built-in.__
@@ -221,39 +240,51 @@ transfer support, uncomment the `-DSTRIDED` flag inside the [make.inc] file.
221
240
Obtaining GCC, MPICH, and CMake
222
241
-------------------------------
223
242
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.
243
+
[GFortran Binaries] binary builds are available at <https://gcc.gnu.org/wiki/GFortranBinaries>.
227
244
228
245
To build all prerequisites from source, including the current development branch of GCC,
229
246
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:
247
+
the [Installation Script] section or try building each prerequisite from source inside
0 commit comments