Gilles,

Whether we think this is a Open64 issue or not, this complier worked with
1.8.3 and 1.8.4rc4.  I don't know the nature of the Fortran changes between
rc4 and rc5, but perhaps they can be made conditional to allow Open64 to
work with 1.8.4?

I will sent configure output off-list momentarily.

-Paul

On Fri, Dec 19, 2014 at 3:03 AM, Gilles Gouaillardet <
gilles.gouaillar...@iferc.org> wrote:
>
>  Paul,
>
> i faced the very same issue with open64-5.0
>
> here is attached a simple reproducer.
>
> main2 can be built, but main cannot be built.
> the only difference is than unlike main.F90, main2.F90 contains a line :
> use, intrinsic :: iso_c_binding
> /* and they both link with libfoo.so, and foo.F90 *does* contain the same
> line */
>
>
> at this stage, all i can conclude is this is an open64 compiler issue.
>
>
> i am unable to reproduce the issue with gcc, could you please detail :
> - your configure command line
> - the version of the gnu compilers you are using
>
>
> i hit a glitch with solarisstudio 12.4 compilers on linux if i configure
> with FC=f77 :
> f77 does not recognize the 'present' keyword and fails, which raises the
> question :
> why is there some f90 code in the mpif-h directory ?
>
> Cheers,
>
> Gilles
>
> make[2]: Entering directory
> `/csc/home1/gouaillardet/build/openmpi-1.8.4rc5-os124/ompi/mpi/fortran/mpif-h'
>   PPFC     libmpi_mpifh_sizeof_la-sizeof-mpif08-pre-1.8.4_f.lo
>     mpi_f08_sizeof:
>
> MODULE mpi_f08_sizeof
>        ^
> "../../../../../../src/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90",
> Line = 31, Column = 8: ERROR: The compiler has detected errors in module
> "MPI_F08_SIZEOF".  No module information file will be created for this
> module.
>
>       if (present(ierror)) ierror = 0
>           ^
> "../../../../../../src/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90",
> Line = 45, Column = 11: ERROR: IMPLICIT NONE is specified in the local
> scope, therefore an explicit type must be specified for function "PRESENT".
>
>
>
> On 2014/12/19 3:40, Paul Hargrove wrote:
>
> Jeff,
>
> See below for some failure details.
> The look like different symptoms of the same issue.
>
> -Paul
>
> Open64 link failure:
>
> $ mpifort -g hello_mpifh.f -o hello_mpifh
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-open64/INST/lib/libmpi_mpifh.so:
> undefined reference to `_Iso_c_binding'
> collect2: ld returned 1 exit status
> make[2]: *** [hello_mpifh] Error 1
>
> Gcc build failure:
>
> libtool: compile:  gfortran -DHAVE_CONFIG_H -I.
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h
> -I../../../../opal/include -I../../../../orte/include
> -I../../../../ompi/include -I../../../../oshmem/include
> -I../../../../opal/mca/hwloc/hwloc191/hwloc/include/private/autogen
> -I../../../../opal/mca/hwloc/hwloc191/hwloc/include/hwloc/autogen
> -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5
> -I../../../..
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/opal/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/orte/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/oshmem/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/opal/mca/hwloc/hwloc191/hwloc/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/BLD/opal/mca/hwloc/hwloc191/hwloc/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/opal/mca/event/libevent2021/libevent
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/opal/mca/event/libevent2021/libevent/include
> -I/global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/BLD/opal/mca/event/libevent2021/libevent/include
> -I../../../../ompi/mpi/fortran/use-mpi-tkr -g -c
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90
>  -fPIC -o .libs/libmpi_mpifh_sizeof_la-sizeof-mpif08-pre-1.8.4_f.o
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:32
>
>    use, intrinsic :: ISO_C_BINDING
>   1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/omp
> i/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:38
>
>       use, intrinsic :: ISO_C_BINDING
>      1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/omp
> i/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:40
>
>
>       INTEGER(KIND=C_SIGNED_CHAR), INTENT(IN) :: x
>                                1
> Error: Symbol 'c_signed_char' at (1) has no IMPLICIT type
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:50
>
>       use, intrinsic :: ISO_C_BINDING
>      1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:52
>
>       INTEGER(KIND=C_SIGNED_CHAR), INTENT(IN) :: x(*)
>                                1
> Error: Symbol 'c_signed_char' at (1) has no IMPLICIT type
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:64
>
>       use, intrinsic :: ISO_C_BINDING
>      1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:66
>
>       INTEGER(KIND=C_SHORT), INTENT(IN) :: x
>                          1
> Error: Symbol 'c_short' at (1) has no IMPLICIT type
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:76
>
>       use, intrinsic :: ISO_C_BINDING
>      1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:78
>
>       INTEGER(KIND=C_SHORT), INTENT(IN) :: x(*)
>                          1
> Error: Symbol 'c_short' at (1) has no IMPLICIT type
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:90
>
>       use, intrinsic :: ISO_C_BINDING
>      1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:92
>
>       INTEGER(KIND=C_INT), INTENT(IN) :: x
>                        1
> Error: Symbol 'c_int' at (1) has no IMPLICIT type
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:102
>
>       use, intrinsic :: ISO_C_BINDING
>      1
> Error: Unclassifiable statement at (1)
>  In file
> /global/homes/h/hargrove/GSCRATCH/OMPI/openmpi-1.8.4rc5-linux-x86_64-gcc-atomics/openmpi-1.8.4rc5/ompi/mpi/fortran/mpif-h/sizeof-mpif08-pre-1.8.4_f.F90:104
>
> [...about 180 more lines of similar output...]
>
> On Thu, Dec 18, 2014 at 9:30 AM, Jeff Squyres (jsquyres) <jsquy...@cisco.com
>
>  wrote:
>
> On Dec 18, 2014, at 11:55 AM, Paul Hargrove <phhargr...@lbl.gov> 
> <phhargr...@lbl.gov> wrote:
>
>
>  + NEW: I see Fortran bindings failing to compile w/ gfortran
> + NEW: I see Fortran bindings fail to link with Open64
>
>  Paul -- you make me sad.  Sigh.
>
> Send some details of these failures when you can.
>
> Thanks!
>
> --
> Jeff squyresjsquy...@cisco.com
> For corporate legal information go 
> to:http://www.cisco.com/web/about/doing_business/legal/cri/
>
> _______________________________________________
> devel mailing listde...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this 
> post:http://www.open-mpi.org/community/lists/devel/2014/12/16671.php
>
>
>
> _______________________________________________
> devel mailing listde...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
> Link to this post: 
> http://www.open-mpi.org/community/lists/devel/2014/12/16677.php
>
>
>
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post:
> http://www.open-mpi.org/community/lists/devel/2014/12/16685.php
>


-- 
Paul H. Hargrove                          phhargr...@lbl.gov
Computer Languages & Systems Software (CLaSS) Group
Computer Science Department               Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900

Reply via email to