Skip to content

Commit 5238b28

Browse files
committed
Copying INSTALL.md from the release branch.
1 parent f743417 commit 5238b28

File tree

1 file changed

+55
-26
lines changed

1 file changed

+55
-26
lines changed

INSTALL.md

Lines changed: 55 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
# [Installing OpenCoarrays](#installing-opencoarrays)
66

77
* [End-User Installation]
8+
* [Installation Script]
89
* [OS X]
910
* [Windows]
1011
* [Linux]
@@ -18,9 +19,35 @@
1819
## End-User Installation ##
1920
</a>
2021

21-
This section explains the options most end users will find simplest to obtain
22-
OpenCoarrays on OS X, Windows, or Linux without building OpenCoarrays from its
23-
source code.
22+
<a name="installation-script">
23+
### Installation Script###
24+
</a>
25+
26+
As of release 1.2.0, users might consider installing by downloading and uncompressing
27+
a file from our [Releases] page and running the installation script in the top-level
28+
source directory:
29+
30+
tar xvzf opencoarrays-x.y.z.tar.gz
31+
cd opencoarrays
32+
./install.sh
33+
34+
Before installing OpenCoarrays, the above bash script will attempt to detect the presence
35+
of the default prequisite packages: [GCC], [MPICH] , and [CMake] packges. If any of the
36+
aforementioned packages appears to be absent from the user's PATH environment variable,
37+
the [install.sh] script will attempt to download, build, and install any missing packages
38+
after asking permission to do so. The script has been tested on Linux and OS X. Please
39+
submit any related problems or questions to our [Issues] page.
40+
41+
A complete installation should result in the creation of the following directories
42+
inside the installation path (.e.g, inside "build" in the above example):
43+
44+
* bin: contains the compiler wrapper (caf), program launcher (cafun), and prerequisites builder (build)
45+
* mod: contains the "opencoarrays.mod" module file for use with non-OpenCoarrays-aware compilers
46+
* lib: contains the "libcaf_mpi.a" static library to which codes link for CAF support
47+
48+
The remainder of this document explains other options that many end users will find
49+
simplest to obtain OpenCoarrays on OS X, Windows, or Linux without building OpenCoarrays
50+
from its source code.
2451

2552
<a name="os-x">
2653
### OS X###
@@ -65,13 +92,13 @@ feature request via our [Issues] page.
6592
### Linux ###
6693
</a>
6794

68-
Linux users who prefer not to build OpenCoarrays from source might access
69-
OpenCoarrays via the the Lubuntu Linux virtual machine from the [Sourcery Institute Store]
70-
after installing the version of [VirtualBox] that is suitable for the relevant
71-
Linux distribution.
72-
73-
Alternatively, if you desire to install using Linux package management software
74-
such as [yum] or [apt-get], please submit a feature request via our [Issues] page.
95+
The [Arch Linux] distribution provides an [aur package] for installing OpenCoarrays.
96+
Users of other Linux distributions who prefer not to build OpenCoarrays from source might
97+
access OpenCoarrays via the the Lubuntu Linux virtual machine from the
98+
[Sourcery Institute Store] after installing the version of [VirtualBox] that is suitable
99+
for the relevant Linux distribution. Alternatively, if you desire to install using other
100+
Linux package management software such as [yum] or [apt-get], please submit a feature
101+
request via our [Issues] page.
75102

76103
<a name="buildingfromsource">
77104
## Building from source ##
@@ -124,24 +151,17 @@ OpenCoarrays, install OpenCoarrays, build the tests, run the tests, and report t
124151

125152
tar xvzf opencoarrays.tar.gz
126153
cd opencoarrays
127-
mkdir build
128-
cd build
154+
mkdir opencoarrays-build
155+
cd opencoarrays-build
129156
CC=mpicc FC=mpif90 cmake .. -DCMAKE_INSTALL_PREFIX=${PWD}
130157
make
131158
make install
132159
ctest
133160

134161
where the the first part of the cmake line sets the CC and FC environment variables
135162
and the final part of the same line defines the installation path as the present
136-
working directory ("build"). Please report any test failures to via the OpenCoarrays
137-
[Issues] page.
138-
139-
A complete installation should result in the creation of the following directories
140-
inside the installation path (.e.g, inside "build" in the above example):
141-
142-
* bin: contains the "caf" compiler wrapper and the "cafrun" launcher bash scripts
143-
* mod: contains the "opencoarrays.mod" module file for use with non-OpenCoarrays-aware compilers
144-
* lib: contains the "libcaf_mpi.a" static library to which codes link for CAF support
163+
working directory ("opencoarrays-build"). Please report any test failures via the
164+
OpenCoarrays [Issues] page.
145165

146166
Advanced options (most users should not use these):
147167

@@ -188,18 +208,23 @@ the Lubuntu Linux virtual machine available for download in the [Sourcery Store]
188208
builds of GCC 4.9, 5.2, and 6.0.
189209

190210
To build all prerequisites from source, including the current development branch of GCC,
191-
you might first try the running the provided scripts in a manner similar to the following:
211+
you might first try the running the provided [install.sh] script as described above in
212+
the [Installation Script] section. Or try building each prerequisite from source as
213+
follows:
192214

193215
cd install_prerequisites
194-
./buildgcc trunk
195-
cd trunk-build
196-
make install
197-
CC=gcc FC=gfortran CXX=g++ ./buildmpich default
216+
CC=gcc FC=gfortran CXX=g++ ./build flex
217+
./build gcc
218+
CC=gcc FC=gfortran CXX=g++ ./build mpich
219+
./build cmake
198220
make install
199221
./buildcmake default
200222

223+
where the second line builds the flex package that is required for building gcc from source.
201224

202225
[End-User Installation]: #end-user-installation
226+
[Installation Script]: #installation-script
227+
[install.sh]: ./install.sh
203228
[OS X]: #os-x
204229
[ticket]: https://trac.macports.org/ticket/47806
205230
[Windows]: #windows
@@ -229,4 +254,8 @@ you might first try the running the provided scripts in a manner similar to the
229254
[TS18508 Additional Parallel Features in Fortran]: http://isotc.iso.org/livelink/livelink?func=ll&objId=17181227&objAction=Open
230255
[GFortran Binaries]: https://gcc.gnu.org/wiki/GFortranBinaries#FromSource
231256
[Installing GCC]: https://gcc.gnu.org/install/
257+
[Arch Linux]: https://www.archlinux.org
258+
[aur package]: https://aur.archlinux.org/packages/opencoarrays/
259+
[Releases]: https://github.com/sourceryinstitute/opencoarrays/releases
260+
232261

0 commit comments

Comments
 (0)