Anton Shterenlikht
2017-09-20 15:43:17 UTC
Hi, I'm new to this list.
I develop a Fortran 2008 coarrays project
targeting HPC systems.
I'd like to simplify my build process with autotools.
The immediate problem is that the executable is
run in different ways on different platforms.
For example, OpenCoarrays compiler is "caf", but
the executable is run with "cafrun -np .. ./a.out".
This is similar to "mpif90" and "mpirun" for MPI
programs. On Cray I compile with "ftn" and run with
"aprun" (it's also cross-compiled, but I'm not there yet).
So I get errors like:
configure:2850: caf -o conftest conftest.f >&5
configure:2854: $? = 0
configure:2861: ./conftest
[***@20474701626e.anet.bris.ac.uk] match_arg (utils/args/args.c:159): unrecognized argument pmi_
args
[***@20474701626e.anet.bris.ac.uk] HYDU_parse_array (utils/args/args.c:174): argument matching r
eturned error
[***@20474701626e.anet.bris.ac.uk] parse_args (ui/mpich/utils.c:1596): error parsing input array
[***@20474701626e.anet.bris.ac.uk] HYD_uii_mpx_get_parameters (ui/mpich/utils.c:1648): unable to
parse user arguments
[***@20474701626e.anet.bris.ac.uk] main (ui/mpich/mpiexec.c:153): error parsing parameters
because the invocation should have been
"cafrun -np .. ./conftest"
for this compiler.
Is there a standard way of implementing this
in configure.ac?
I looked at ax_prog_fc_mpi:
https://www.gnu.org/software/autoconf-archive/ax_prog_fc_mpi.html
which looks similar but not exactly what I need.
Thanks
Anton
I develop a Fortran 2008 coarrays project
targeting HPC systems.
I'd like to simplify my build process with autotools.
The immediate problem is that the executable is
run in different ways on different platforms.
For example, OpenCoarrays compiler is "caf", but
the executable is run with "cafrun -np .. ./a.out".
This is similar to "mpif90" and "mpirun" for MPI
programs. On Cray I compile with "ftn" and run with
"aprun" (it's also cross-compiled, but I'm not there yet).
So I get errors like:
configure:2850: caf -o conftest conftest.f >&5
configure:2854: $? = 0
configure:2861: ./conftest
[***@20474701626e.anet.bris.ac.uk] match_arg (utils/args/args.c:159): unrecognized argument pmi_
args
[***@20474701626e.anet.bris.ac.uk] HYDU_parse_array (utils/args/args.c:174): argument matching r
eturned error
[***@20474701626e.anet.bris.ac.uk] parse_args (ui/mpich/utils.c:1596): error parsing input array
[***@20474701626e.anet.bris.ac.uk] HYD_uii_mpx_get_parameters (ui/mpich/utils.c:1648): unable to
parse user arguments
[***@20474701626e.anet.bris.ac.uk] main (ui/mpich/mpiexec.c:153): error parsing parameters
because the invocation should have been
"cafrun -np .. ./conftest"
for this compiler.
Is there a standard way of implementing this
in configure.ac?
I looked at ax_prog_fc_mpi:
https://www.gnu.org/software/autoconf-archive/ax_prog_fc_mpi.html
which looks similar but not exactly what I need.
Thanks
Anton