gfortran Coarray status – compiler, library & GSoC
Tobias Burnus
burnus@net-b.de
Fri Jun 27 06:13:00 GMT 2014
Toon Moene wrote:
> How does this work, configure-wise ? I have OpenMPI installed on my
> system in the usual place; will a trunk configure find this
> automatically ?
Well, currently, the library is separate and not part of GCC, thus,
building GCC will only (and automatically) build libcaf_single.
(-lcaf_single).
To build the MPI version with, you need to fetch the libcaf files, enter
"make mpi" - and then you can link it with "-L path/to/libcaf_mpi/
-lcaf_mpi".
You may need to tune some make file settings, but that's it. You don't
even have to compile the library with the current GCC; ignoring
__float128 and its complex counter part, you don't even have to use GCC
to compile it. Later, I intent that one just includes
ISO_Fortran_binding.h, but for now, it contains some definitions from
libgfortran.h in the header file.
The idea is to make it simple to compile/recompile the libcaf_*
libraries without having to re-build GCC. That also makes it simpler for
Linux distributions, which ship with several MPI implementation.
Usually, every system has a slightly different set of MPI implementation
(Open MPI, MPICH, MVARPICH â or vendor versions of those) and also in
different versions. Having them separate permits to build GCC once â or
use the nightly build or the vendor's/HPC centre's version â and compile
the library separately. It also make it simpler to play around with the
library - including building it as shared library [by default and on
purpose only a static library is built].
However, we are also considering to support the automatic building of
libcaf_mpi together with GCC.
Tobias
More information about the Fortran
mailing list