[mpich-discuss] mpich2&open64 shared object compilation bug&fix

Anthony Chan chan at mcs.anl.gov
Fri Sep 7 11:12:56 CDT 2012


I am not familiar with Open64 compilers, what would you use
to set CC, CXX, F77 and FC during mpich2 configure ?

----- Original Message -----
> I tried 1.5rc1 and there seems to be other problems... I have no idea
> what
> is this about... configured with: --enable-fast=O2 --enable-shared
> --enable-mpe --with-pmi=slurm --with-pm=no
> Just as a side note, same configure options work fine with GCC 4.7.1,
> but
> that doesnt say much about who to blame :)
> 
> 
> Making all in .
> make[2]: Entering directory `/home/eyurtese/temp/mpich2-1.5rc1'
> CC src/binding/f90/create_f90_real.lo
> src/binding/f90/create_f90_real.c: In function
> 'PMPI_Type_create_f90_real':
> src/binding/f90/create_f90_real.c:73: error: expected expression
> before
> ',' token
> src/binding/f90/create_f90_real.c:74: warning: braces around scalar
> initializer
> src/binding/f90/create_f90_real.c:74: warning: (near initialization
> for
> 'f90_real_model[0].dtype')
> src/binding/f90/create_f90_real.c:74: error: expected expression
> before
> ',' token
> src/binding/f90/create_f90_real.c:74: warning: excess elements in
> scalar
> initializer
> src/binding/f90/create_f90_real.c:74: warning: (near initialization
> for
> 'f90_real_model[0].dtype')
> make[2]: *** [src/binding/f90/create_f90_real.lo] Error 1
> make[2]: Leaving directory `/home/eyurtese/temp/mpich2-1.5rc1'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/eyurtese/temp/mpich2-1.5rc1'
> make: *** [all] Error 2
> 
> 
> On Fri, 7 Sep 2012, Evren Yurtesen IB wrote:
> 
> >
> > On Thu, 6 Sep 2012, Pavan Balaji wrote:
> >
> >>
> >> Your patch below is to configure (not configure.in) which is
> >> auto-generated. The first step I'd recommend is to try out
> >> mpich2-1.5rc1.
> >> That uses libtool for shared library support. That'll at least
> >> confirm
> >> whether libtool supports open64 or not. If it doesn't, then a patch
> >> would
> >> be required for libtool.
> >
> > Yes, I realized the configure.in later. My apologies, I am not very
> > familiar
> > with the configure system. Please see the attached diffs, what do
> > you think
> > about them?
> >
> > I will check 1.5 next.
> >
> > Thanks,
> > Evren
> >
> >> -- Pavan
> >>
> >> On 09/06/2012 05:47 PM, Evren Yurtesen IB wrote:
> >>> Hmm, I am not quite sure? the configure.in file contains the
> >>> information
> >>> which should be changed?
> >>> http://trac.mcs.anl.gov/projects/mpich2/browser/mpich2/branches/release/mpich2-1.4.x/configure.in
> >>>
> >>> On Thu, 6 Sep 2012, Pavan Balaji wrote:
> >>>
> >>>> Hello,
> >>>>
> >>>> It looks like this patch needs to go into libtool, rather than in
> >>>> MPICH.
> >>>> We
> >>>> can maintain a patch to libtool within mpich (at least till
> >>>> libtool
> >>>> upstream
> >>>> integrates it), if you can provide us with one.
> >>>>
> >>>> -- Pavan
> >>>>
> >>>> On 09/06/2012 05:24 PM, Evren Yurtesen IB wrote:
> >>>>> I was trying to compile mpich2 1.4.1p1 using open64 and oddly it
> >>>>> kept
> >>>>> failing with the following configure options...
> >>>>>
> >>>>> --enable-fast=O2 --enable-shared --enable-mpe --with-pmi=slurm
> >>>>> --with-pm=none
> >>>>>
> >>>>> I have googled this and found the following forum post:
> >>>>> http://devgurus.amd.com/thread/146210
> >>>>>
> >>>>> Where the exact error message which I was getting was mentioned:
> >>>>>     make[4]: Entering directory
> >>>>> `/home2/ach/soft/wrfipkd/mpich2-1.3.1/src/binding/f90'
> >>>>>      FC mpi.f90
> >>>>> make[4]: *** [mpi.lo] Error 1
> >>>>>
> >>>>>
> >>>>> I have modified the configure script and managed to finish
> >>>>> installation.
> >>>>> (diff below). Can this fix be part of mpich2?
> >>>>>
> >>>>>
> >>>>>
> >>>>> --- configure.orig 2012-09-07 00:45:10.571555205 +0300
> >>>>> +++ configure 2012-09-07 00:59:28.956554973 +0300
> >>>>> @@ -16739,6 +16739,10 @@
> >>>>>         # Try to use the compiler name
> >>>>>         if test "$FC" = "ifort" -o "$FC" = "ifc" ; then
> >>>>>             pac_cv_fc_vendor=intel
> >>>>> + elif test "$FC" = "openf90" ; then
> >>>>> + pac_cv_fc_vendor=open64
> >>>>> + elif test "$FC" = "openf95" ; then
> >>>>> + pac_cv_fc_vendor=open64
> >>>>>         elif test "$FC" = "pgf90" ; then
> >>>>>             pac_cv_fc_vendor=pgi
> >>>>>         elif test "$FC" = "xlf90" -o "$FC" = "xlf90_r" ; then
> >>>>> @@ -16785,6 +16789,14 @@
> >>>>>                    fi
> >>>>>                    ;;
> >>>>>
> >>>>> + open64)
> >>>>> + # open64 implements the GNU options
> >>>>> + FC_SHL="$FC -shared -fPIC"
> >>>>> + if test "$enable_rpath" = yes ; then
> >>>>> + FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
> >>>>> + fi
> >>>>> + ;;
> >>>>> +
> >>>>>                    pgi)
> >>>>>                    # Portland Group implements the GNU options
> >>>>>                    FC_SHL="$FC -shared -fPIC"
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> Thanks,
> >>>>> Evren
> >>>>>
> >>>>> PS. I created a ticket as well:
> >>>>> https://trac.mcs.anl.gov/projects/mpich2/ticket/1690
> >>>>> _______________________________________________
> >>>>> mpich-discuss mailing list mpich-discuss at mcs.anl.gov
> >>>>> To manage subscription options or unsubscribe:
> >>>>> https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss
> >>>>>
> >>>>
> >>>> --
> >>>> Pavan Balaji
> >>>> http://www.mcs.anl.gov/~balaji
> >>>>
> >>>>
> >>
> >> --
> >> Pavan Balaji
> >> http://www.mcs.anl.gov/~balaji
> >>
> >
> _______________________________________________
> mpich-discuss mailing list mpich-discuss at mcs.anl.gov
> To manage subscription options or unsubscribe:
> https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss


More information about the mpich-discuss mailing list